You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gitbox@activemq.apache.org by GitBox <gi...@apache.org> on 2019/07/04 23:58:20 UTC

[GitHub] [activemq-nms-amqp] cjwmorgan-sol commented on issue #4: [WIP] Failover implementation

cjwmorgan-sol commented on issue #4: [WIP] Failover implementation
URL: https://github.com/apache/activemq-nms-amqp/pull/4#issuecomment-508592224
 
 
   @HavretGC It is not clear to me if the code for pausing message delivery is blocking from NmsConnection Stop. Connection Stop must be blocking on the return of all message delivery callbacks, see section 6.1.5 jms 2.0. 
   Is Cancel on CancellationTokenSource blocking waiting for the ActionBlock to complete? (I think no as the document indicates its a signal) 
   Is Dispose CancellationTokenSource blocking waiting for the ActionBlock to complete? (I'm not sure how dispose affect the ActionBlock processing)
   
   If neither are blocking on the action block to complete there is at least one race condition I can see in NmsMessageConsumer DeliverNextPending where the Listener could be nulled by the application thread after NmsConnection Stop. Although I imagine that would be very difficult for that to happen.
   
   Also orderly shutdown (Connection, Session, MessageConsumer Close) follows the same blocking idea so for now I think its possible to receive message deliveries on a closed connection, session, and Message Consumer. See Section 6.1.8 for the connection close.

----------------------------------------------------------------
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