You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Otavio Rodolfo Piske (Jira)" <ji...@apache.org> on 2020/05/27 07:57:00 UTC

[jira] [Created] (CAMEL-15117) Consuming a subscribed message during shutdown causes NPE

Otavio Rodolfo Piske created CAMEL-15117:
--------------------------------------------

             Summary: Consuming a subscribed message during shutdown causes NPE
                 Key: CAMEL-15117
                 URL: https://issues.apache.org/jira/browse/CAMEL-15117
             Project: Camel
          Issue Type: Bug
          Components: camel-salesforce
            Reporter: Otavio Rodolfo Piske


It seems that, sporadically, the code may throw an NPE.

 

I am speculating*because I cannot confirm entirely due to the sporadic nature of the issue, but by looking at the logs and the behavior, it seems that the onMessage handler for subscriptions can still be called during the shutdown.

 
{quote}2020-05-27 09:19:21,017 [orceConnector-0] INFO org.apache.camel.impl.engine.DefaultShutdownStrategy - Graceful shutdown of 1 routes completed in 0 seconds
2020-05-27 09:19:21,018 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - State updated: CONNECTED -> DISCONNECTING
2020-05-27 09:19:21,018 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Sending messages [\{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/disconnect, id=19}]
2020-05-27 09:19:21,018 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Sent disconnect \{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/disconnect, id=19}
2020-05-27 09:19:21,018 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Notifying threads in waitFor()
2020-05-27 09:19:21,018 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Waiting 60000ms for [DISCONNECTED]
2020-05-27 09:19:21,147 [nt@4ae82baa-204] DEBUG org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper$5 - Received messages [\{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/disconnect, id=19, successful=true}]09:19:21,147 [nt@4ae82baa-204] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Processing \{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/disconnect, id=19, successful=true}
2020-05-27 09:19:21,147 [nt@4ae82baa-204] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - State updated: DISCONNECTING -> TERMINATING
2020-05-27 09:19:21,147 [nt@4ae82baa-203] DEBUG org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper$5 - Received messages [\{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/connect, id=17, successful=true}]27 09:19:21,147 [nt@4ae82baa-203] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Processing \{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/connect, id=17, successful=true}
2020-05-27 09:19:21,148 [nt@4ae82baa-204] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - State updated: TERMINATING -> DISCONNECTED
2020-05-27 09:19:21,148 [nt@4ae82baa-204] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Notifying threads in waitFor()
2020-05-27 09:19:21,148 [orceConnector-0] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Waited 129/60000ms for [DISCONNECTED], state is DISCONNECTED
2020-05-27 09:19:21,148 [nt@4ae82baa-203] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - State not updated: DISCONNECTED -> CONNECTED
2020-05-27 09:19:21,148 [nt@4ae82baa-203] DEBUG org.cometd.client.BayeuxClient.67a9cb3f - Notifying threads in waitFor()
2020-05-27 09:19:21,169 [nt@4ae82baa-209] DEBUG org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper$5 - Received messages [\{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/subscribe, id=18, subscription=/topic/CamelKafkaConnectorTopic, successful=true}]td.client.BayeuxClient.67a9cb3f - Processing \{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/subscribe, id=18, subscription=/topic/CamelKafkaConnectorTopic, successful=true}7 09:19:21,169 [nt@4ae82baa-209] DEBUG org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper - [CHANNEL:META_SUBSCRIBE]: \{clientId=hr1cjxz3pqn37al6x32wuz369e0, channel=/meta/subscribe, id=18, subscription=/topic/CamelKafkaConnectorTopic, successful=true}mel.component.salesforce.internal.streaming.SubscriptionHelper - Subscribed to channel /topic/CamelKafkaConnectorTopic
2020-05-27 09:19:21,169 [nt@4ae82baa-209] INFO org.cometd.bayeux.client.ClientSession - Exception while invoking listener org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper$7@62e79206
java.lang.NullPointerException: null
 at org.apache.camel.component.salesforce.internal.streaming.SubscriptionHelper$7.onMessage(SubscriptionHelper.java:458) ~[camel-salesforce-3.3.0.jar:3.3.0]
 at org.cometd.common.AbstractClientSession$AbstractSessionChannel.notifyOnMessage(AbstractClientSession.java:583) ~[cometd-java-common-4.0.4.jar:4.0.4]
 at org.cometd.common.AbstractClientSession$AbstractSessionChannel.notifyMessageListeners(AbstractClientSession.java:568) ~[cometd-java-common-4.0.4.jar:4.0.4]
 at org.cometd.common.AbstractClientSession.notifyListeners(AbstractClientSession.java:308) ~[cometd-java-common-4.0.4.jar:4.0.4]
 at org.cometd.common.AbstractClientSession.lambda$receive$4(AbstractClientSession.java:269) ~[cometd-java-common-4.0.4.jar:4.0.4]
 at org.cometd.bayeux.Promise$2.succeed(Promise.java:103) [bayeux-api-4.0.4.jar:4.0.4]
 ...
{quote}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)