sijie opened a new issue #5350: Pulsar can't load the customized SerDe
URL: https://github.com/apache/pulsar/issues/5350
**Describe the bug**
Pulsar couldn't find deployed SerDe class. But it exists in my fat jar
```
12:59:00.903 [t1/n1/JournalBatchParseFunction-0] ERROR org.apache.pulsar.functions.instance.JavaInstanceRunnable
- [t1/n1/JournalBatchParseFunction:0] Uncaught exception in Java Instance
java.lang.RuntimeException: User class must be in class path
at org.apache.pulsar.functions.utils.Reflections.createInstance(Reflections.java:67)
~[org.apache.pulsar-pulsar-functions-utils-2.4.1.jar:2.4.1]
at org.apache.pulsar.functions.instance.InstanceUtils.createInstance(InstanceUtils.java:84)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:?]
at org.apache.pulsar.functions.instance.InstanceUtils.initializeSerDe(InstanceUtils.java:43)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:?]
at org.apache.pulsar.functions.source.TopicSchema.newSchemaInstance(TopicSchema.java:197)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:2.4.1]
at org.apache.pulsar.functions.source.TopicSchema.lambda$getSchema$0(TopicSchema.java:66)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:2.4.1]
at java.util.HashMap.computeIfAbsent(HashMap.java:1127) ~[?:1.8.0_212]
at org.apache.pulsar.functions.source.TopicSchema.getSchema(TopicSchema.java:66)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:2.4.1]
at org.apache.pulsar.functions.sink.PulsarSink.initializeSchema(PulsarSink.java:330)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:2.4.1]
at org.apache.pulsar.functions.sink.PulsarSink.open(PulsarSink.java:255) ~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:2.4.1]
at org.apache.pulsar.functions.instance.JavaInstanceRunnable.setupOutput(JavaInstanceRunnable.java:769)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:?]
at org.apache.pulsar.functions.instance.JavaInstanceRunnable.setupJavaInstance(JavaInstanceRunnable.java:203)
~[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:?]
at org.apache.pulsar.functions.instance.JavaInstanceRunnable.run(JavaInstanceRunnable.java:234)
[org.apache.pulsar-pulsar-functions-instance-2.4.1.jar:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]
Caused by: java.lang.ClassNotFoundException: ru.alfabank.api.utils.JournalBatchSerde
at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[?:1.8.0_212]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_212]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_212]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_212]
at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_212]
at org.apache.pulsar.functions.utils.Reflections.createInstance(Reflections.java:65)
~[org.apache.pulsar-pulsar-functions-utils-2.4.1.jar:2.4.1]
... 12 more
```
The command used to submit the function
```
bin/pulsar-admin --admin-url http://corpint4:6680 functions create --retain-ordering --jar
http://binary/artifactory/libs-release-local/ru/alfabank/api/utils/pulsar-util-function-api-pack/0.10.2/pulsar-util-function-api-pack-0.10.2-all.jar
--classname ru.alfabank.api.utils.JournalBatchParseFunction --inputs persistent://t1/n1/queue_1
--output persistent://t1/n1/queue_journal --output-serde-classname ru.alfabank.api.utils.JournalBatchSerde
--tenant t1 --namespace n1
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
|