Change your message in a way is compatible ? On Fri, Jul 22, 2022 at 3:36 PM Jan Šmucr <jan.sm...@aimtecglobal.com> wrote:
> The reason for this is that there's a whole infrastructure built using the > core protocol, and now we need to connect a Python-based Lambda capable of > receiving large messages. Is there any other, core-compatible method? > > Jan > > Dne 22. 7. 2022 21:21 napsal uživatel Clebert Suconic < > clebert.suco...@gmail.com>: > If you expect conversions to happen, you have to send messages from > qpid-ms or core-jms client. > > > On the case: > > > ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(); > Connection conn = factory.createConnection(...); > Session session = conn.createSession(...) > Producer producer = session.createProducer(....); > producer.send(session.createTextMessage(YOUR-LARGE-BODY-GOES-HERE); > > > > Then the conversion from Core to AMQP should happen fine when you > receive the message on the other side at your Python client. > > > > If you really must use the Core-API, then you will need to hack your > way in and find what the JMS client would do.. but at that point it's > just a non standard way of doing this... You would need to have a very > good reason to not do the right thing on this case. > > On Fri, Jul 22, 2022 at 3:00 PM Clebert Suconic > <clebert.suco...@gmail.com> wrote: > > > > If you’re not using qpid JMS it will not work. > > > > On Fri, Jul 22, 2022 at 8:06 AM Andy Yar <andyya...@gmail.com> wrote: > >> > >> There is another attempt employing AMQP test structures. It produces > the same incorrect message body. > >> > >> On Fri, Jul 22, 2022 at 12:21 PM Andy Yar <andyya...@gmail.com> wrote: > >>> > >>> Hello, > >>> Using the LargeServerMessageImpl was just an attempt providing a > seemingly easy way to introduce a kind of Large Message into the test. I'm > not familiar with the code base at all - so I simply tried to somehow > provide the requested test replicating my "sending via Core -> receiving > via Qpid" issue. The same applies to the explicit AMQP conversion - the > encountered error simply pointed on it. Is there an intended "test way" to > model the message transfer among different clients/protocols? > >>> > >>> Anyway, I've changed the test to employ > ClientLargeMessageImpl/ClientMessageImpl instead of the server-related > LargeServerMessageImpl with a very similar result. Does that implementation > fit the simulated use case (sending via Core -> receiving via Qpid AMQP) > better or is the explicit AMQP conversion misused? > >>> > >>> Please, see the attached patch. > >>> > >>> On Mon, Jul 18, 2022 at 3:50 PM Clebert Suconic < > clebert.suco...@gmail.com> wrote: > >>>> > >>>> AMQP to Core and Core to AMQP conversions expect you using JMS clients > >>>> to generate your message. There are certain caveats that both clients > >>>> will add to the messages. > >>>> > >>>> > >>>> Usually I have seen more users doing weird conversions in AMQP when > >>>> they use a C++ or non Java Client.. but on your case you used a Core > >>>> Client, using a non standard way to send a message (ServerMessage from > >>>> the client)... and it's not clear the message is correctly set for a > >>>> conversion to work. > >>>> > >>>> > >>>> I need you to provide some explanation on what you're doing.. if this > >>>> was a way to hack a bug your saw or if this is just the way you're > >>>> using it. > >>>> > >>>> > >>>> if this is how you're actually using, I would suggest you either use > >>>> the proper APIs or if you're doing some hack for performance > >>>> consideration you have to set the message in a better way the > >>>> converters would understand... > >>>> > >>>> On Mon, Jul 18, 2022 at 9:38 AM Clebert Suconic > >>>> <clebert.suco...@gmail.com> wrote: > >>>> > > >>>> > Are you using the LargeServerMessageImpl on your client, or that was > >>>> > just a "hack" to reproduce your issue. > >>>> > > >>>> > > >>>> > LargeServerMessageImpl was not meant to be used on the client. But > if > >>>> > you're doing that just to show something you faced in production > it's > >>>> > ok.. but using the LargeServerMessageImpl to send a Client Message > is > >>>> > a big not for me. > >>>> > > >>>> > The only reason we do that is for server to server transfer. > >>>> > > >>>> > On Mon, Jul 18, 2022 at 7:39 AM Andy Yar <andyya...@gmail.com> > wrote: > >>>> > > > >>>> > > Hello, > >>>> > > Yes, the 2.23.1 test instance was freshly created. > >>>> > > > >>>> > > I've attached a test as a part of ARTEMIS-3897 > >>>> > > <https://issues.apache.org/jira/browse/ARTEMIS-3897>. I hope it > helps. > >>>> > > > >>>> > > > >>>> > > On Sat, Jul 16, 2022 at 5:21 PM Clebert Suconic < > clebert.suco...@gmail.com> > >>>> > > wrote: > >>>> > > > >>>> > > > Did you start with fresh data on 2.23.1. > >>>> > > > > >>>> > > > If you did please provide a self enclosing test reproducing > your issue. > >>>> > > > > >>>> > > > On Fri, Jul 15, 2022 at 4:29 AM Andy Yar <andyya...@gmail.com> > wrote: > >>>> > > > > >>>> > > > > A quick test using 2.23.1 results in the same error payload > being > >>>> > > > received: > >>>> > > > > > >>>> > > > > "Message(address='test', durable=True, priority=4, > >>>> > > > > annotations=AnnotationDict({symbol('x-opt-jms-dest'): byte(0), > >>>> > > > > symbol('x-opt-jms-msg-type'): byte(0)}), > >>>> > > > > properties={'JMSXDeliveryCount': None, '_AMQ_LARGE_SIZE': 67}, > >>>> > > > > body='Conversion to AMQP error: Error reading in simpleString, > >>>> > > > > length=1330464032 is greater than readableBytes=62')" > >>>> > > > > > >>>> > > > > Best regards > >>>> > > > > > >>>> > > > > On Thu, Jul 14, 2022 at 9:18 PM Clebert Suconic > >>>> > > > > <clebert.suco...@gmail.com> wrote: > >>>> > > > > > > >>>> > > > > > There's been a few fixes in AMQP Large message. > >>>> > > > > > > >>>> > > > > > > >>>> > > > > > More prominently a fix with the JDBC implementation between > 2.17 and > >>>> > > > > HEAD. > >>>> > > > > > > >>>> > > > > > > >>>> > > > > > I would definitely recommend you to upgrade. > >>>> > > > > > > >>>> > > > > > On Thu, Jul 14, 2022 at 10:26 AM Justin Bertram < > jbert...@apache.org> > >>>> > > > > wrote: > >>>> > > > > > > > >>>> > > > > > > I would expect this to work. Can you try this on the > latest release > >>>> > > > > (i.e. > >>>> > > > > > > 2.23.1) [1]? > >>>> > > > > > > > >>>> > > > > > > If it still doesn't work please open a Jira with all the > details > >>>> > > > > necessary > >>>> > > > > > > to reproduce the problem. An actual test-case would be > ideal. > >>>> > > > > > > > >>>> > > > > > > Thanks! > >>>> > > > > > > > >>>> > > > > > > > >>>> > > > > > > Justin > >>>> > > > > > > > >>>> > > > > > > [1] > https://activemq.apache.org/components/artemis/download/ > >>>> > > > > > > > >>>> > > > > > > On Thu, Jul 14, 2022 at 9:20 AM Andy Yar < > andyya...@gmail.com> > >>>> > > > wrote: > >>>> > > > > > > > >>>> > > > > > > > Hello, > >>>> > > > > > > > Sending a message as a Large Message via Core protocol > and > >>>> > > > receiving > >>>> > > > > > > > it via AMQP on Artemis 2.17.0 ends with receiving the > following > >>>> > > > > string > >>>> > > > > > > > as message body: > >>>> > > > > > > > > >>>> > > > > > > > "Conversion to AMQP error: Error reading in > simpleString, length=y > >>>> > > > is > >>>> > > > > > > > greater than readableBytes=x" > >>>> > > > > > > > > >>>> > > > > > > > Broker lists the message as Type: Default and Large: > True. > >>>> > > > > > > > > >>>> > > > > > > > The receiver is basically Qpid's: > >>>> > > > > > > > > >>>> > > > > > > > > >>>> > > > > > >>>> > > > > https://github.com/apache/qpid-proton/blob/main/python/examples/queue_browser.py > >>>> > > > > > > > > >>>> > > > > > > > The doc > >>>> > > > > > > > > >>>> > > > > > >>>> > > > > https://activemq.apache.org/components/artemis/documentation/2.17.0/large-messages.html > >>>> > > > > > > > states both Core and AMQP support Large Message. Is > this approach > >>>> > > > > > > > valid? > >>>> > > > > > > > > >>>> > > > > > > > Thanks > >>>> > > > > > > > > >>>> > > > > > > > > >>>> > > > > > > >>>> > > > > > > >>>> > > > > > > >>>> > > > > > -- > >>>> > > > > > Clebert Suconic > >>>> > > > > > >>>> > > > -- > >>>> > > > Clebert Suconic > >>>> > > > > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > Clebert Suconic > >>>> > >>>> > >>>> > >>>> -- > >>>> Clebert Suconic > > > > -- > > Clebert Suconic > > > > -- > Clebert Suconic > -- Clebert Suconic