jbertram commented on PR #4529: URL: https://github.com/apache/activemq-artemis/pull/4529#issuecomment-1615110201
> If I understand the flow correctly, the server creates an internal session, opens a transaction and uses it to transfer the data to a subscriber. As noted previously, the `internalSession` you pointed out in `o.a.a.a.c.p.o.OpenWireConnection` is an `o.a.a.a.c.s.ServerSession`. This is a _core_ session, and it can't be used to transfer data to an OpenWire client. Furthermore, it doesn't have anything to do with the `o.a.a.a.c.p.o.a.AMQSession` for which `isInternal()` is returning `true` and triggering this problem. I looked through the source code of the OpenWire JMS and I see a handful of places where the session ID is set to `-1` which would cause `o.a.a.a.c.p.o.a.AMQSession#isInternal()` to return `true`. I still don't understand _why_ this is done, but it helps to understand where it's coming from. Please take care of the checkstyle issues with your PR and then I'll merge it. Thanks! -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
