We seems to experience the same issue upgrading from 5.6.0 to 515.8, but in our case we use SQL database as a message store. As it was mentioned and confirmed by us KahaDB has a fallback capability when it encounter older (Version 6) of OpenWire. Unfortunately, it looks like for SQL databases there is no fallback option implemented: 2019-04-17 15:50:26,361 ERROR [Thread-8] (BrokerService.java:639) - Failed to start Apache ActiveMQ (RTCV180R1GPWR78QA12T3DEV-NY-CONNEX61616, null) java.io.UTFDataFormatException: bad string at org.apache.activemq.util.DataByteArrayInputStream.readUTF(DataByteArrayInputStream.java:265) at org.apache.activemq.openwire.v11.BaseDataStreamMarshaller.looseUnmarshalString(BaseDataStreamMarshaller.java:571) at org.apache.activemq.openwire.v11.MessageIdMarshaller.looseUnmarshal(MessageIdMarshaller.java:122) at org.apache.activemq.openwire.OpenWireFormat.looseUnmarshalNestedObject(OpenWireFormat.java:474) at org.apache.activemq.openwire.v11.BaseDataStreamMarshaller.looseUnmarsalNestedObject(BaseDataStreamMarshaller.java:466) at org.apache.activemq.openwire.v11.MessageMarshaller.looseUnmarshal(MessageMarshaller.java:220) at org.apache.activemq.openwire.v11.ActiveMQMessageMarshaller.looseUnmarshal(ActiveMQMessageMarshaller.java:101) at org.apache.activemq.openwire.v11.ActiveMQTextMessageMarshaller.looseUnmarshal(ActiveMQTextMessageMarshaller.java:101) at org.apache.activemq.openwire.OpenWireFormat.doUnmarshal(OpenWireFormat.java:367) at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:201) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.getLastMessageBrokerSequenceId(JDBCPersistenceAdapter.java:266) at org.apache.activemq.broker.region.DestinationFactoryImpl.getLastMessageBrokerSequenceId(DestinationFactoryImpl.java:147) at org.apache.activemq.broker.region.RegionBroker.<init>(RegionBroker.java:130) at org.apache.activemq.broker.jmx.ManagedRegionBroker.<init>(ManagedRegionBroker.java:108) at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:2399) at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:2391) at org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:2348) at org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:1045) at org.apache.activemq.broker.BrokerService.getAdminConnectionContext(BrokerService.java:2619) at org.apache.activemq.broker.BrokerService.startVirtualConsumerDestinations(BrokerService.java:2780) at org.apache.activemq.broker.BrokerService.startDestinations(BrokerService.java:2610) at org.apache.activemq.broker.BrokerService.doStartBroker(BrokerService.java:739) at org.apache.activemq.broker.BrokerService.startBroker(BrokerService.java:733) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:636) at COM.olf.adapter.jbroker.JBrokerService.startBroker(JBrokerService.java:1507) at COM.olf.adapter.jbroker.JBrokerComponent.run(JBrokerComponent.java:220) at java.lang.Thread.run(Thread.java:748)
I'm wondering if there is a way to enable backward compatibility via some kind of property, or there are some other ways to do it? -- Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html