You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Thorsten Meinl <th...@knime.com> on 2022/10/13 14:49:43 UTC

ClassCastException when creating a new topic

Hi all,

Very occasionally we get the following exception when creating a new
topic in Artemis (2.24.0):

Caused by: java.lang.ClassCastException: class
org.apache.activemq.artemis.core.protocol.core.impl.wireformat.NullResp
onseMessage_V2 cannot be cast to class
org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionB
indingQueryResponseMessage_V4
(org.apache.activemq.artemis.core.protocol.core.impl.wireformat.NullRes
ponseMessage_V2 and
org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionB
indingQueryResponseMessage_V4 are in unnamed module of loader
io.quarkus.bootstrap.classloading.QuarkusClassLoader @3bf0cb2d)
	at
org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionCont
ext.addressQuery(ActiveMQSessionContext.java:413)
	at
org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addressQ
uery(ClientSessionImpl.java:794)
	at
org.apache.activemq.artemis.jms.client.ActiveMQSession.lookupTopic(Acti
veMQSession.java:1325)
	at
org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCreateTo
pic(ActiveMQSession.java:554)
	at
org.apache.activemq.artemis.jms.client.ActiveMQSession.createTopic(Acti
veMQSession.java:542)
	at
org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createTopic(A
ctiveMQJMSContext.java:418)

Any hints what could be the problem?

Thanks,

Thorsten

-- 
Dr.-Ing. Thorsten Meinl
KNIME AG
Talacker 50
8001 Zurich, Switzerland



Re: ClassCastException when creating a new topic

Posted by Thorsten Meinl <th...@knime.com>.
Am Freitag, dem 14.10.2022 um 09:22 +0100 schrieb Robbie Gemmell:
> A very similar report came in a couple months ago, and the reason was
> that the session (/children) was incorrectly being used from multiple
> threads, causing responses operations to 'overlap' and leading to a
> ClassCastException when the mismatching responses for a different
> operation arrived.
This was a very useful hint. We were indeed using the same JMSContext
in potentially multiple threads at the same time. Which explains why it
occurred only randomly. Hence "user error" - as most of the times.
I'll try to fix this and then monitor.

Thanks!

> On Thu, 13 Oct 2022 at 20:36, Justin Bertram <jb...@apache.org>
> wrote:
> > 
> > If you are able to reproduce with 2.26.0 please follow up with a
> > Jira [1],
> > and attach the test you're using to reproduce it (or some other
> > equivalent
> > way to reproduce the CCE). Thanks!
> > 
> > 
> > Justin
> > 
> > [1] https://issues.apache.org/jira/browse/ARTEMIS
> > 
> > On Thu, Oct 13, 2022 at 2:31 PM Thorsten Meinl
> > <th...@knime.com>
> > wrote:
> > 
> > > Am Donnerstag, dem 13.10.2022 um 11:38 -0500 schrieb Justin
> > > Bertram:
> > > > It looks like perhaps the responses are being read by the
> > > > client out
> > > > of order or something like that. Are you using both the core
> > > > JMS
> > > > client and broker from 2.24.0?
> > > Yes, both client and broker are 2.24.0.
> > > 
> > > > How often do you see this? Have you tried reproducing with the
> > > > latest
> > > > release (i.e. 2.26.0)?
> > > Very infrequently actually. We have automated tests and they fail
> > > once
> > > every few days with this message. So in less than 1 out of 1000 I
> > > would
> > > say (very rough guess).
> > > 
> > > I can try with 2.26.0.
> > > 
> > > 
> > > > On Thu, Oct 13, 2022 at 9:51 AM Thorsten Meinl
> > > > <th...@knime.com>
> > > > wrote:
> > > > 
> > > > > Hi all,
> > > > > 
> > > > > Very occasionally we get the following exception when
> > > > > creating a
> > > > > new
> > > > > topic in Artemis (2.24.0):
> > > > > 
> > > > > Caused by: java.lang.ClassCastException: class
> > > > > org.apache.activemq.artemis.core.protocol.core.impl.wireforma
> > > > > t.Null
> > > > > Resp
> > > > > onseMessage_V2 cannot be cast to class
> > > > > org.apache.activemq.artemis.core.protocol.core.impl.wireforma
> > > > > t.Sess
> > > > > ionB
> > > > > indingQueryResponseMessage_V4
> > > > > (org.apache.activemq.artemis.core.protocol.core.impl.wireform
> > > > > at.Nul
> > > > > lRes
> > > > > ponseMessage_V2 and
> > > > > org.apache.activemq.artemis.core.protocol.core.impl.wireforma
> > > > > t.Sess
> > > > > ionB
> > > > > indingQueryResponseMessage_V4 are in unnamed module of loader
> > > > > io.quarkus.bootstrap.classloading.QuarkusClassLoader
> > > > > @3bf0cb2d)
> > > > >         at
> > > > > org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQS
> > > > > ession
> > > > > Cont
> > > > > ext.addressQuery(ActiveMQSessionContext.java:413)
> > > > >         at
> > > > > org.apache.activemq.artemis.core.client.impl.ClientSessionImp
> > > > > l.addr
> > > > > essQ
> > > > > uery(ClientSessionImpl.java:794)
> > > > >         at
> > > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.lookup
> > > > > Topic(
> > > > > Acti
> > > > > veMQSession.java:1325)
> > > > >         at
> > > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.intern
> > > > > alCrea
> > > > > teTo
> > > > > pic(ActiveMQSession.java:554)
> > > > >         at
> > > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.create
> > > > > Topic(
> > > > > Acti
> > > > > veMQSession.java:542)
> > > > >         at
> > > > > org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.cre
> > > > > ateTop
> > > > > ic(A
> > > > > ctiveMQJMSContext.java:418)
> > > > > 
> > > > > Any hints what could be the problem?
> > > > > 
> > > > > Thanks,
> > > > > 
> > > > > Thorsten
> > > > > 
> > > > > --
> > > > > Dr.-Ing. Thorsten Meinl
> > > > > KNIME AG
> > > > > Talacker 50
> > > > > 8001 Zurich, Switzerland
> > > > > 
> > > > > 
> > > > > 
> > > 
> > > --
> > > Dr.-Ing. Thorsten Meinl
> > > KNIME AG
> > > Talacker 50
> > > 8001 Zurich, Switzerland
> > > 
> > > 
> > > 

-- 
Dr.-Ing. Thorsten Meinl
KNIME AG
Talacker 50
8001 Zurich, Switzerland



Re: ClassCastException when creating a new topic

Posted by Robbie Gemmell <ro...@gmail.com>.
A very similar report came in a couple months ago, and the reason was
that the session (/children) was incorrectly being used from multiple
threads, causing responses operations to 'overlap' and leading to a
ClassCastException when the mismatching responses for a different
operation arrived.

On Thu, 13 Oct 2022 at 20:36, Justin Bertram <jb...@apache.org> wrote:
>
> If you are able to reproduce with 2.26.0 please follow up with a Jira [1],
> and attach the test you're using to reproduce it (or some other equivalent
> way to reproduce the CCE). Thanks!
>
>
> Justin
>
> [1] https://issues.apache.org/jira/browse/ARTEMIS
>
> On Thu, Oct 13, 2022 at 2:31 PM Thorsten Meinl <th...@knime.com>
> wrote:
>
> > Am Donnerstag, dem 13.10.2022 um 11:38 -0500 schrieb Justin Bertram:
> > > It looks like perhaps the responses are being read by the client out
> > > of order or something like that. Are you using both the core JMS
> > > client and broker from 2.24.0?
> > Yes, both client and broker are 2.24.0.
> >
> > > How often do you see this? Have you tried reproducing with the latest
> > > release (i.e. 2.26.0)?
> > Very infrequently actually. We have automated tests and they fail once
> > every few days with this message. So in less than 1 out of 1000 I would
> > say (very rough guess).
> >
> > I can try with 2.26.0.
> >
> >
> > > On Thu, Oct 13, 2022 at 9:51 AM Thorsten Meinl
> > > <th...@knime.com>
> > > wrote:
> > >
> > > > Hi all,
> > > >
> > > > Very occasionally we get the following exception when creating a
> > > > new
> > > > topic in Artemis (2.24.0):
> > > >
> > > > Caused by: java.lang.ClassCastException: class
> > > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Null
> > > > Resp
> > > > onseMessage_V2 cannot be cast to class
> > > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > > > ionB
> > > > indingQueryResponseMessage_V4
> > > > (org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Nul
> > > > lRes
> > > > ponseMessage_V2 and
> > > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > > > ionB
> > > > indingQueryResponseMessage_V4 are in unnamed module of loader
> > > > io.quarkus.bootstrap.classloading.QuarkusClassLoader @3bf0cb2d)
> > > >         at
> > > > org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSession
> > > > Cont
> > > > ext.addressQuery(ActiveMQSessionContext.java:413)
> > > >         at
> > > > org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addr
> > > > essQ
> > > > uery(ClientSessionImpl.java:794)
> > > >         at
> > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.lookupTopic(
> > > > Acti
> > > > veMQSession.java:1325)
> > > >         at
> > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCrea
> > > > teTo
> > > > pic(ActiveMQSession.java:554)
> > > >         at
> > > > org.apache.activemq.artemis.jms.client.ActiveMQSession.createTopic(
> > > > Acti
> > > > veMQSession.java:542)
> > > >         at
> > > > org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createTop
> > > > ic(A
> > > > ctiveMQJMSContext.java:418)
> > > >
> > > > Any hints what could be the problem?
> > > >
> > > > Thanks,
> > > >
> > > > Thorsten
> > > >
> > > > --
> > > > Dr.-Ing. Thorsten Meinl
> > > > KNIME AG
> > > > Talacker 50
> > > > 8001 Zurich, Switzerland
> > > >
> > > >
> > > >
> >
> > --
> > Dr.-Ing. Thorsten Meinl
> > KNIME AG
> > Talacker 50
> > 8001 Zurich, Switzerland
> >
> >
> >

Re: ClassCastException when creating a new topic

Posted by Justin Bertram <jb...@apache.org>.
If you are able to reproduce with 2.26.0 please follow up with a Jira [1],
and attach the test you're using to reproduce it (or some other equivalent
way to reproduce the CCE). Thanks!


Justin

[1] https://issues.apache.org/jira/browse/ARTEMIS

On Thu, Oct 13, 2022 at 2:31 PM Thorsten Meinl <th...@knime.com>
wrote:

> Am Donnerstag, dem 13.10.2022 um 11:38 -0500 schrieb Justin Bertram:
> > It looks like perhaps the responses are being read by the client out
> > of order or something like that. Are you using both the core JMS
> > client and broker from 2.24.0?
> Yes, both client and broker are 2.24.0.
>
> > How often do you see this? Have you tried reproducing with the latest
> > release (i.e. 2.26.0)?
> Very infrequently actually. We have automated tests and they fail once
> every few days with this message. So in less than 1 out of 1000 I would
> say (very rough guess).
>
> I can try with 2.26.0.
>
>
> > On Thu, Oct 13, 2022 at 9:51 AM Thorsten Meinl
> > <th...@knime.com>
> > wrote:
> >
> > > Hi all,
> > >
> > > Very occasionally we get the following exception when creating a
> > > new
> > > topic in Artemis (2.24.0):
> > >
> > > Caused by: java.lang.ClassCastException: class
> > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Null
> > > Resp
> > > onseMessage_V2 cannot be cast to class
> > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > > ionB
> > > indingQueryResponseMessage_V4
> > > (org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Nul
> > > lRes
> > > ponseMessage_V2 and
> > > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > > ionB
> > > indingQueryResponseMessage_V4 are in unnamed module of loader
> > > io.quarkus.bootstrap.classloading.QuarkusClassLoader @3bf0cb2d)
> > >         at
> > > org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSession
> > > Cont
> > > ext.addressQuery(ActiveMQSessionContext.java:413)
> > >         at
> > > org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addr
> > > essQ
> > > uery(ClientSessionImpl.java:794)
> > >         at
> > > org.apache.activemq.artemis.jms.client.ActiveMQSession.lookupTopic(
> > > Acti
> > > veMQSession.java:1325)
> > >         at
> > > org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCrea
> > > teTo
> > > pic(ActiveMQSession.java:554)
> > >         at
> > > org.apache.activemq.artemis.jms.client.ActiveMQSession.createTopic(
> > > Acti
> > > veMQSession.java:542)
> > >         at
> > > org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createTop
> > > ic(A
> > > ctiveMQJMSContext.java:418)
> > >
> > > Any hints what could be the problem?
> > >
> > > Thanks,
> > >
> > > Thorsten
> > >
> > > --
> > > Dr.-Ing. Thorsten Meinl
> > > KNIME AG
> > > Talacker 50
> > > 8001 Zurich, Switzerland
> > >
> > >
> > >
>
> --
> Dr.-Ing. Thorsten Meinl
> KNIME AG
> Talacker 50
> 8001 Zurich, Switzerland
>
>
>

Re: ClassCastException when creating a new topic

Posted by Thorsten Meinl <th...@knime.com>.
Am Donnerstag, dem 13.10.2022 um 11:38 -0500 schrieb Justin Bertram:
> It looks like perhaps the responses are being read by the client out
> of order or something like that. Are you using both the core JMS
> client and broker from 2.24.0?
Yes, both client and broker are 2.24.0.

> How often do you see this? Have you tried reproducing with the latest
> release (i.e. 2.26.0)?
Very infrequently actually. We have automated tests and they fail once
every few days with this message. So in less than 1 out of 1000 I would
say (very rough guess).

I can try with 2.26.0.


> On Thu, Oct 13, 2022 at 9:51 AM Thorsten Meinl
> <th...@knime.com>
> wrote:
> 
> > Hi all,
> > 
> > Very occasionally we get the following exception when creating a
> > new
> > topic in Artemis (2.24.0):
> > 
> > Caused by: java.lang.ClassCastException: class
> > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Null
> > Resp
> > onseMessage_V2 cannot be cast to class
> > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > ionB
> > indingQueryResponseMessage_V4
> > (org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Nul
> > lRes
> > ponseMessage_V2 and
> > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.Sess
> > ionB
> > indingQueryResponseMessage_V4 are in unnamed module of loader
> > io.quarkus.bootstrap.classloading.QuarkusClassLoader @3bf0cb2d)
> >         at
> > org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSession
> > Cont
> > ext.addressQuery(ActiveMQSessionContext.java:413)
> >         at
> > org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addr
> > essQ
> > uery(ClientSessionImpl.java:794)
> >         at
> > org.apache.activemq.artemis.jms.client.ActiveMQSession.lookupTopic(
> > Acti
> > veMQSession.java:1325)
> >         at
> > org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCrea
> > teTo
> > pic(ActiveMQSession.java:554)
> >         at
> > org.apache.activemq.artemis.jms.client.ActiveMQSession.createTopic(
> > Acti
> > veMQSession.java:542)
> >         at
> > org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createTop
> > ic(A
> > ctiveMQJMSContext.java:418)
> > 
> > Any hints what could be the problem?
> > 
> > Thanks,
> > 
> > Thorsten
> > 
> > --
> > Dr.-Ing. Thorsten Meinl
> > KNIME AG
> > Talacker 50
> > 8001 Zurich, Switzerland
> > 
> > 
> > 

-- 
Dr.-Ing. Thorsten Meinl
KNIME AG
Talacker 50
8001 Zurich, Switzerland



Re: ClassCastException when creating a new topic

Posted by Justin Bertram <jb...@apache.org>.
It looks like perhaps the responses are being read by the client out of
order or something like that. Are you using both the core JMS client and
broker from 2.24.0? How often do you see this? Have you tried reproducing
with the latest release (i.e. 2.26.0)?


Justin

On Thu, Oct 13, 2022 at 9:51 AM Thorsten Meinl <th...@knime.com>
wrote:

> Hi all,
>
> Very occasionally we get the following exception when creating a new
> topic in Artemis (2.24.0):
>
> Caused by: java.lang.ClassCastException: class
> org.apache.activemq.artemis.core.protocol.core.impl.wireformat.NullResp
> onseMessage_V2 cannot be cast to class
> org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionB
> indingQueryResponseMessage_V4
> (org.apache.activemq.artemis.core.protocol.core.impl.wireformat.NullRes
> ponseMessage_V2 and
> org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionB
> indingQueryResponseMessage_V4 are in unnamed module of loader
> io.quarkus.bootstrap.classloading.QuarkusClassLoader @3bf0cb2d)
>         at
> org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionCont
> ext.addressQuery(ActiveMQSessionContext.java:413)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addressQ
> uery(ClientSessionImpl.java:794)
>         at
> org.apache.activemq.artemis.jms.client.ActiveMQSession.lookupTopic(Acti
> veMQSession.java:1325)
>         at
> org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCreateTo
> pic(ActiveMQSession.java:554)
>         at
> org.apache.activemq.artemis.jms.client.ActiveMQSession.createTopic(Acti
> veMQSession.java:542)
>         at
> org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createTopic(A
> ctiveMQJMSContext.java:418)
>
> Any hints what could be the problem?
>
> Thanks,
>
> Thorsten
>
> --
> Dr.-Ing. Thorsten Meinl
> KNIME AG
> Talacker 50
> 8001 Zurich, Switzerland
>
>
>