On 31 March 2016 at 04:32, Garlapati Sreeram Kumar <sreer...@live.com> wrote: > Hello All! > > I am using Proton-J reactor API (Version 0.12.0) for receiving AMQP Messages > (from Microsoft Azure Event Hubs): > https://github.com/Azure/azure-event-hubs/blob/master/java/azure-eventhubs/src/main/java/com/microsoft/azure/servicebus/amqp/ReceiveLinkHandler.java#L124 > > Am using the onDelivery(Event) callback to receive messages. I really > appreciate your help with this issue/behavior: > > ISSUE: I noticed that the last few messages on the Queue are not being issued > to onDelivery(Event) callback by the Reactor > - Then, I went ahead and enabled proton Frame tracing (PN_TRACE_FRM=1) and > discovered that the Transfer frames corresponding to those messages were not > even delivered to Client. Then, I looked at our Service Proton Frames and can > clearly see that they are being delivered by the Service. And other AMQP > clients (for ex: .net client can see the Transfer frames) > - Is this a known behavior? > Does Reactor code path disable Nagle on underlying socket – could this be > related? or is there any other Configuration that we should be setting to see > all Transfer frames received on the Socket? > > Please advice. > > Thanks a lot in Advance! > Sree > > Sent from Mail for Windows 10 >
I'm not aware of anyone else reporting anything like that. I don't see anything in the code suggesting the reactor sets TCP_NODELAY trueon the socket, but I wouldn't think that should matter here. The frame trace logging is done after the bytes are given to the Transport and are processed into frames, so a lack of logging could suggest various things such as they didnt actually get there, they werent processed, something went wrong before they did/were, something went wrong decoding them, etc. Its hard to say much more without more info. Robbie