You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2018/05/08 20:46:23 UTC

[GitHub] jaoki opened a new pull request #1750: Show stacktrace when Function fails

jaoki opened a new pull request #1750: Show stacktrace when Function fails
URL: https://github.com/apache/incubator-pulsar/pull/1750
 
 
   
   
   ### Motivation
   
   This is particularly handy when you are submiting your function and your
   function fails, due to cases like Persistence.createEntityManagerFactory
   can't find a persistent-unit and PersistenceException(RuntimeException)
   is thrown.
   
   ### Modifications
   
   Add printStackTrace() when createInstance() failed.
   
   ### Result
   The following is added 
   ```
   java.lang.RuntimeException: User class constructor throws exception
           at org.apache.pulsar.functions.utils.Reflections.createInstance(Reflections.java:113)
           at org.apache.pulsar.functions.utils.Reflections.createInstance(Reflections.java:157)
           at org.apache.pulsar.admin.cli.CmdFunctions$FunctionDetailsCommand.doJavaSubmitChecks(CmdFunctions.java:356)
           at org.apache.pulsar.admin.cli.CmdFunctions$FunctionDetailsCommand.processArguments(CmdFunctions.java:292)
           at org.apache.pulsar.admin.cli.CmdFunctions$BaseCommand.run(CmdFunctions.java:112)
           at org.apache.pulsar.admin.cli.CmdBase.run(CmdBase.java:61)
           at org.apache.pulsar.admin.cli.PulsarAdminTool.run(PulsarAdminTool.java:167)
           at org.apache.pulsar.admin.cli.PulsarAdminTool.main(PulsarAdminTool.java:217)
   Caused by: java.lang.reflect.InvocationTargetException
           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
           at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
           at org.apache.pulsar.functions.utils.Reflections.createInstance(Reflections.java:105)
           ... 7 more
   Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named myunit
           at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
           at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
           ... 12 more
   ```
   in addition to the original message
   ```
   java.lang.IllegalArgumentException: The Java util function class MyContextFunction could not be instantiated from jar /myfunctions/pulsar-functions/target/pulsar-functions-LOCAL-SNAPSHOT-shaded.jar
           at org.apache.pulsar.admin.cli.CmdFunctions$FunctionDetailsCommand.doJavaSubmitChecks(CmdFunctions.java:370)
           at org.apache.pulsar.admin.cli.CmdFunctions$FunctionDetailsCommand.processArguments(CmdFunctions.java:292)
           at org.apache.pulsar.admin.cli.CmdFunctions$BaseCommand.run(CmdFunctions.java:112)
           at org.apache.pulsar.admin.cli.CmdBase.run(CmdBase.java:61)
           at org.apache.pulsar.admin.cli.PulsarAdminTool.run(PulsarAdminTool.java:167)
           at org.apache.pulsar.admin.cli.PulsarAdminTool.main(PulsarAdminTool.java:217)
   ```
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on 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