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:
[email protected]


With regards,
Apache Git Services

Reply via email to