You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Justin Bertram <jb...@apache.org> on 2022/01/31 19:17:25 UTC

Re: extraproperties become string in expired messages

Looking at the code it looks to me like the type of the original data
should be preserved. Where are you seeing the Strings? Are you debugging
the broker or are you seeing them in the data returned from the broker to
the web console?


Justin

On Fri, Nov 12, 2021 at 5:48 PM Dondorp, Erwin
<er...@cgi.com.invalid> wrote:

> Hello,
>
> On expiry of a (AMQP) message, some extra properties are added, which
> together with some application properties result in the table below, taken
> from screen "Browse Queue".
> The values from the "extraProperties" group of properties are all strings,
> which is unexpected for at least _AMQ_ACTUAL_EXPIRY, for which a number is
> expected.
> I noticed this because I'm working on a PR which annotates the 3 timestamp
> values with a readable form of that timestamp.
>
> In a quick code search, I could not find whether the conversion to a
> string was intentional or accidental.
> Does anyone have a clue or pointer?
>
> thx,
> e.
>
> Properties
> key                                       value
> extraProperties._AMQ_ACTUAL_EXPIRY        1636758226343
> extraProperties._AMQ_AD                   ExpiryQueue
> extraProperties._AMQ_ORIG_ADDRESS         a1
> extraProperties._AMQ_ORIG_MESSAGE_ID      139
> extraProperties._AMQ_ORIG_QUEUE           q1
> messageAnnotations.one                    1
> messageAnnotations.two                    2
> messageAnnotations.x-opt-ACTUAL-EXPIRY    1636758226343
> messageAnnotations.x-opt-ORIG-ADDRESS     a1
> messageAnnotations.x-opt-ORIG-MESSAGE-ID  139
> messageAnnotations.x-opt-ORIG-QUEUE       q1
> properties.creationTime                   1636758165408
>

Re: extraproperties become string in expired messages

Posted by Justin Bertram <jb...@apache.org>.
Thanks for clarifying.


Justin

On Mon, Jan 31, 2022 at 3:16 PM Dondorp, Erwin
<er...@cgi.com.invalid> wrote:

> Justin,
>
> This string was in header "extraProperties._AMQ_ACTUAL_EXPIRY", as shown
> in the (single) message viewer.
> I think this is a field that only appears in expired AMQP messages.
> The difference between string and number fields became apparent when I
> worked on annotating datetime fields with their readable value.
>
> Clebert had a similar answer.
> As a result, I proposed PR
> https://github.com/apache/activemq-artemis/pull/3891 (merged) in issue
> https://issues.apache.org/jira/browse/ARTEMIS-3623 (closed).
>
> :-)
>
> Erwin
>
> -----Oorspronkelijk bericht-----
> Van: Justin Bertram <jb...@apache.org>
> Verzonden: maandag 31 januari 2022 20:17
> Aan: users@activemq.apache.org
> Onderwerp: Re: extraproperties become string in expired messages
>
>
> EXTERNAL SENDER:   Do not click any links or open any attachments unless
> you trust the sender and know the content is safe.
> EXPÉDITEUR EXTERNE:    Ne cliquez sur aucun lien et n’ouvrez aucune pièce
> jointe à moins qu’ils ne proviennent d’un expéditeur fiable, ou que vous
> ayez l'assurance que le contenu provient d'une source sûre.
>
> Looking at the code it looks to me like the type of the original data
> should be preserved. Where are you seeing the Strings? Are you debugging
> the broker or are you seeing them in the data returned from the broker to
> the web console?
>
>
> Justin
>
> On Fri, Nov 12, 2021 at 5:48 PM Dondorp, Erwin
> <er...@cgi.com.invalid> wrote:
>
> > Hello,
> >
> > On expiry of a (AMQP) message, some extra properties are added, which
> > together with some application properties result in the table below,
> > taken from screen "Browse Queue".
> > The values from the "extraProperties" group of properties are all
> > strings, which is unexpected for at least _AMQ_ACTUAL_EXPIRY, for
> > which a number is expected.
> > I noticed this because I'm working on a PR which annotates the 3
> > timestamp values with a readable form of that timestamp.
> >
> > In a quick code search, I could not find whether the conversion to a
> > string was intentional or accidental.
> > Does anyone have a clue or pointer?
> >
> > thx,
> > e.
> >
> > Properties
> > key                                       value
> > extraProperties._AMQ_ACTUAL_EXPIRY        1636758226343
> > extraProperties._AMQ_AD                   ExpiryQueue
> > extraProperties._AMQ_ORIG_ADDRESS         a1
> > extraProperties._AMQ_ORIG_MESSAGE_ID      139
> > extraProperties._AMQ_ORIG_QUEUE           q1
> > messageAnnotations.one                    1
> > messageAnnotations.two                    2
> > messageAnnotations.x-opt-ACTUAL-EXPIRY    1636758226343
> > messageAnnotations.x-opt-ORIG-ADDRESS     a1
> > messageAnnotations.x-opt-ORIG-MESSAGE-ID  139
> > messageAnnotations.x-opt-ORIG-QUEUE       q1
> > properties.creationTime                   1636758165408
> >
>

RE: extraproperties become string in expired messages

Posted by "Dondorp, Erwin" <er...@cgi.com.INVALID>.
Justin,

This string was in header "extraProperties._AMQ_ACTUAL_EXPIRY", as shown in the (single) message viewer.
I think this is a field that only appears in expired AMQP messages.
The difference between string and number fields became apparent when I worked on annotating datetime fields with their readable value.

Clebert had a similar answer.
As a result, I proposed PR https://github.com/apache/activemq-artemis/pull/3891 (merged) in issue https://issues.apache.org/jira/browse/ARTEMIS-3623 (closed).

:-)

Erwin

-----Oorspronkelijk bericht-----
Van: Justin Bertram <jb...@apache.org> 
Verzonden: maandag 31 januari 2022 20:17
Aan: users@activemq.apache.org
Onderwerp: Re: extraproperties become string in expired messages


EXTERNAL SENDER:   Do not click any links or open any attachments unless you trust the sender and know the content is safe.
EXPÉDITEUR EXTERNE:    Ne cliquez sur aucun lien et n’ouvrez aucune pièce jointe à moins qu’ils ne proviennent d’un expéditeur fiable, ou que vous ayez l'assurance que le contenu provient d'une source sûre.

Looking at the code it looks to me like the type of the original data should be preserved. Where are you seeing the Strings? Are you debugging the broker or are you seeing them in the data returned from the broker to the web console?


Justin

On Fri, Nov 12, 2021 at 5:48 PM Dondorp, Erwin <er...@cgi.com.invalid> wrote:

> Hello,
>
> On expiry of a (AMQP) message, some extra properties are added, which 
> together with some application properties result in the table below, 
> taken from screen "Browse Queue".
> The values from the "extraProperties" group of properties are all 
> strings, which is unexpected for at least _AMQ_ACTUAL_EXPIRY, for 
> which a number is expected.
> I noticed this because I'm working on a PR which annotates the 3 
> timestamp values with a readable form of that timestamp.
>
> In a quick code search, I could not find whether the conversion to a 
> string was intentional or accidental.
> Does anyone have a clue or pointer?
>
> thx,
> e.
>
> Properties
> key                                       value
> extraProperties._AMQ_ACTUAL_EXPIRY        1636758226343
> extraProperties._AMQ_AD                   ExpiryQueue
> extraProperties._AMQ_ORIG_ADDRESS         a1
> extraProperties._AMQ_ORIG_MESSAGE_ID      139
> extraProperties._AMQ_ORIG_QUEUE           q1
> messageAnnotations.one                    1
> messageAnnotations.two                    2
> messageAnnotations.x-opt-ACTUAL-EXPIRY    1636758226343
> messageAnnotations.x-opt-ORIG-ADDRESS     a1
> messageAnnotations.x-opt-ORIG-MESSAGE-ID  139
> messageAnnotations.x-opt-ORIG-QUEUE       q1
> properties.creationTime                   1636758165408
>