For completeness, additional changes were needed to resolve the underlying issue, in commits 25bc3cfbad79a750c24af39e3b3aa5740bc62cea and 663365dd715f4241848804ca1022f031765c5d98.
I'll cancel this vote and respin. Robbie On 18 April 2018 at 00:40, Timothy Bish <tabish...@gmail.com> wrote: > > I've added a fix in ea46607e776062c8555ef24a74c48a9b12bf2ca9 that I think > sound resolve this. Sadly we need to -1 this release candidate and spin a > new one. > > changing vote to -1 > > > On 04/17/2018 06:49 PM, Keith W wrote: >> >> With the 0.27.0 RC (and the Qpid JMS Client 0.31.0) I am noticing a >> java.lang.ArrayIndexOutOfBoundsException when PN_TRACE_FRM=true, which >> did not occur with 0.26.0. >> >> My JMS code fragment (based on HelloWorld). >> >> Context context = new InitialContext(); >> ConnectionFactory factory = (ConnectionFactory) >> context.lookup("myFactoryLookup"); >> Destination queue = (Destination) context.lookup("myQueueLookup"); >> Connection connection = >> factory.createConnection(System.getProperty("USER"), >> System.getProperty("PASSWORD")); >> Session session = connection.createSession(false, >> Session.AUTO_ACKNOWLEDGE); >> MessageProducer messageProducer = session.createProducer(queue); >> BytesMessage message = session.createBytesMessage(); >> message.writeBytes(new byte[261955 /*261954 wont produce the AIOOBE*/]); >> messageProducer.send(message); >> >> and the protocol trace/stack trace: >> >> /Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/bin/java >> -DUSER=admin -DPASSWORD=admin "-javaagent:/Applications/IntelliJ >> IDEA.app/Contents/lib/idea_rt.jar=53139:/Applications/IntelliJ >> IDEA.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath >> >> /Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/tools.jar:/Users/keith/src/qpid-jms/qpid-jms-examples/target/classes:/Users/keith/.m2/repository/org/apache/qpid/qpid-jms-client/0.31.0/qpid-jms-client-0.31.0.jar:/Users/keith/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/Users/keith/.m2/repository/org/apache/geronimo/specs/geronimo-jms_2.0_spec/1.0-alpha-2/geronimo-jms_2.0_spec-1.0-alpha-2.jar:/Users/keith/.m2/repository/io/netty/netty-buffer/4.1.22.Final/netty-buffer-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-common/4.1.22.Final/netty-common-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-handler/4.1.22.Final/netty-handler-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-codec/4.1.22.Final/netty-codec-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-transport/4.1.22.Final/netty-transport-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-resolver/4.1.22.Final/netty-resolver-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-transport-native-epoll/4.1.22.Final/netty-transport-native-epoll-4.1.22.Final-linux-x86_64.jar:/Users/keith/.m2/repository/io/netty/netty-transport-native-unix-common/4.1.22.Final/netty-transport-native-unix-common-4.1.22.Final.jar:/Users/keith/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.22.Final/netty-transport-native-kqueue-4.1.22.Final-osx-x86_64.jar:/Users/keith/.m2/repository/io/netty/netty-codec-http/4.1.22.Final/netty-codec-http-4.1.22.Final.jar:/Users/keith/.m2/repository/org/apache/qpid/proton-j/0.27.0/proton-j-0.27.0.jar:/Users/keith/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar:/Users/keith/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar >> org.apache.qpid.jms.example.HelloWorld >> [328402240:0] -> Open{ >> containerId='ID:cae5f6c7-5104-4354-82a0-3c0a76a421da:1', >> hostname='localhost', maxFrameSize=1048576, channelMax=32767, >> idleTimeOut=30000, outgoingLocales=null, incomingLocales=null, >> offeredCapabilities=null, >> desiredCapabilities=[sole-connection-for-container, DELAYED_DELIVERY, >> ANONYMOUS-RELAY, SHARED-SUBS], properties={product=QpidJMS, >> version=0.31.0, platform=JVM: 1.8.0_162, 25.162-b12, Oracle >> Corporation, OS: Mac OS X, 10.11.6, x86_64}} >> [328402240:0] <- Open{ >> containerId='718c61f0-f7bd-4ec4-9482-003e412f327e', hostname='null', >> maxFrameSize=262144, channelMax=255, idleTimeOut=0, >> outgoingLocales=null, incomingLocales=null, >> offeredCapabilities=[ANONYMOUS-RELAY, SHARED-SUBS, >> sole-connection-for-container], desiredCapabilities=null, >> properties={product=qpid, version=7.1.0-SNAPSHOT, >> qpid.build=dbd42eaf5ff27920dc35d9f68f67641479855ae4, >> qpid.instance_name=Broker, qpid.virtualhost_properties_supported=true, >> sole-connection-detection-policy=0}} >> [328402240:0] -> Begin{remoteChannel=null, nextOutgoingId=1, >> incomingWindow=2047, outgoingWindow=2147483647, handleMax=65535, >> offeredCapabilities=null, desiredCapabilities=null, properties=null} >> [328402240:0] <- Begin{remoteChannel=0, nextOutgoingId=0, >> incomingWindow=8192, outgoingWindow=2048, handleMax=4294967295, >> offeredCapabilities=null, desiredCapabilities=null, properties=null} >> [328402240:1] -> Begin{remoteChannel=null, nextOutgoingId=1, >> incomingWindow=2047, outgoingWindow=2147483647, handleMax=65535, >> offeredCapabilities=null, desiredCapabilities=null, properties=null} >> [328402240:1] <- Begin{remoteChannel=1, nextOutgoingId=0, >> incomingWindow=8192, outgoingWindow=2048, handleMax=4294967295, >> offeredCapabilities=null, desiredCapabilities=null, properties=null} >> [328402240:1] -> >> >> Attach{name='qpid-jms:sender:ID:ef837842-3463-43a8-b4a3-638bac1afeb9:1:1:1:queue', >> handle=0, role=SENDER, sndSettleMode=UNSETTLED, rcvSettleMode=FIRST, >> source=Source{address='ID:ef837842-3463-43a8-b4a3-638bac1afeb9:1:1:1', >> durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, >> dynamicNodeProperties=null, distributionMode=null, filter=null, >> defaultOutcome=null, outcomes=[amqp:accepted:list, amqp:rejected:list, >> amqp:released:list, amqp:modified:list], capabilities=null}, >> target=Target{address='queue', durable=NONE, expiryPolicy=SESSION_END, >> timeout=0, dynamic=false, dynamicNodeProperties=null, >> capabilities=[queue]}, unsettled=null, incompleteUnsettled=false, >> initialDeliveryCount=0, maxMessageSize=null, offeredCapabilities=null, >> desiredCapabilities=[DELAYED_DELIVERY], properties=null} >> [328402240:1] <- >> >> Attach{name='qpid-jms:sender:ID:ef837842-3463-43a8-b4a3-638bac1afeb9:1:1:1:queue', >> handle=0, role=RECEIVER, sndSettleMode=UNSETTLED, rcvSettleMode=FIRST, >> source=Source{address='ID:ef837842-3463-43a8-b4a3-638bac1afeb9:1:1:1', >> durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, >> dynamicNodeProperties=null, distributionMode=null, filter=null, >> defaultOutcome=null, outcomes=[amqp:accepted:list, amqp:rejected:list, >> amqp:released:list, amqp:modified:list], capabilities=null}, >> target=Target{address='queue', durable=NONE, expiryPolicy=SESSION_END, >> timeout=0, dynamic=false, dynamicNodeProperties=null, >> capabilities=[REJECT_UNROUTABLE, DELAYED_DELIVERY]}, unsettled={}, >> incompleteUnsettled=false, initialDeliveryCount=null, >> maxMessageSize=null, offeredCapabilities=[REJECT_UNROUTABLE, >> DELAYED_DELIVERY], desiredCapabilities=null, properties={}} >> [328402240:1] <- Flow{nextIncomingId=1, incomingWindow=8192, >> nextOutgoingId=0, outgoingWindow=2048, handle=0, deliveryCount=0, >> linkCredit=20000, available=null, drain=false, echo=false, >> properties=null} >> [328402240:1] -> Transfer{handle=0, deliveryId=0, deliveryTag=\x00, >> messageFormat=0, settled=null, more=true, rcvSettleMode=null, >> state=null, resume=false, aborted=false, batchable=false} (262122) >> >> "\x00Sp\xc0\x02\x01A\x00Sr\xc1)\x04\xa3\x0ex-opt-jms-destQ\x00\xa3\x12x-opt-jms-msg-typeQ\x03\x00Ss\xd0\x00\x00\x00e\x00\x00\x00\x0a\xa1/ID:ef837842-3463-43a8-b4a3-638bac1afeb9:1:1:1-1@\xa1\x05queue@@@\xa3\x18application/octet-stream@@\x83\x00\x00\x01b\xd5\xc1\x0b\x8a\x00Su\xb0\x00\x03\xffC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"...(truncated) >> Caught exception, exiting. >> javax.jms.JMSException: 524244 >> at >> org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:86) >> at >> org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:108) >> at org.apache.qpid.jms.JmsConnection.send(JmsConnection.java:699) >> at org.apache.qpid.jms.JmsConnection.send(JmsConnection.java:683) >> at >> org.apache.qpid.jms.JmsNoTxTransactionContext.send(JmsNoTxTransactionContext.java:36) >> at org.apache.qpid.jms.JmsSession.send(JmsSession.java:883) >> at org.apache.qpid.jms.JmsSession.send(JmsSession.java:774) >> at >> org.apache.qpid.jms.JmsMessageProducer.sendMessage(JmsMessageProducer.java:246) >> at >> org.apache.qpid.jms.JmsMessageProducer.send(JmsMessageProducer.java:176) >> at >> org.apache.qpid.jms.JmsMessageProducer.send(JmsMessageProducer.java:165) >> at org.apache.qpid.jms.example.HelloWorld.main(HelloWorld.java:61) >> Caused by: java.io.IOException: 524244 >> at >> org.apache.qpid.jms.util.IOExceptionSupport.create(IOExceptionSupport.java:45) >> at >> org.apache.qpid.jms.provider.ProviderFuture.failOnError(ProviderFuture.java:114) >> at >> org.apache.qpid.jms.provider.ProviderFuture.sync(ProviderFuture.java:108) >> at org.apache.qpid.jms.JmsConnection.send(JmsConnection.java:694) >> ... 8 more >> Caused by: java.lang.ArrayIndexOutOfBoundsException: 524244 >> at >> org.apache.qpid.proton.engine.impl.StringUtils.toQuotedString(StringUtils.java:53) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.log(TransportImpl.java:1710) >> at >> org.apache.qpid.proton.engine.impl.FrameWriter.logFrame(FrameWriter.java:213) >> at >> org.apache.qpid.proton.engine.impl.FrameWriter.writeFrame(FrameWriter.java:168) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.writeFrame(TransportImpl.java:1075) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.processTransportWorkSender(TransportImpl.java:599) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.processTransportWork(TransportImpl.java:518) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.writeInto(TransportImpl.java:347) >> at >> org.apache.qpid.proton.engine.impl.TransportOutputAdaptor.pending(TransportOutputAdaptor.java:59) >> at >> org.apache.qpid.proton.engine.impl.TransportOutputAdaptor.head(TransportOutputAdaptor.java:80) >> at >> org.apache.qpid.proton.engine.impl.SaslImpl$SwitchingSaslTransportWrapper.head(SaslImpl.java:820) >> at >> org.apache.qpid.proton.engine.impl.HandshakeSniffingTransportWrapper.head(HandshakeSniffingTransportWrapper.java:151) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.head(TransportImpl.java:1533) >> at >> org.apache.qpid.proton.engine.impl.TransportImpl.getOutputBuffer(TransportImpl.java:1476) >> at >> org.apache.qpid.jms.provider.amqp.AmqpProvider.pumpToProtonTransport(AmqpProvider.java:1023) >> at >> org.apache.qpid.jms.provider.amqp.AmqpFixedProducer.doSend(AmqpFixedProducer.java:168) >> at >> org.apache.qpid.jms.provider.amqp.AmqpFixedProducer.send(AmqpFixedProducer.java:109) >> at >> org.apache.qpid.jms.provider.amqp.AmqpProvider$8.run(AmqpProvider.java:615) >> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) >> at java.util.concurrent.FutureTask.run(FutureTask.java:266) >> at >> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) >> at >> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) >> at java.lang.Thread.run(Thread.java:748) >> >> On 17 April 2018 at 17:17, Gordon Sim <g...@redhat.com> wrote: >>> >>> On 13/04/18 20:03, Robbie Gemmell wrote: >>>> >>>> Hi folks, >>>> >>>> I have put together a spin for a Qpid Proton-J 0.27.0 release, please >>>> test it and vote accordingly. >>> >>> >>> +1, built from source including all tests. >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org >>> For additional commands, e-mail: users-h...@qpid.apache.org >>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org >> For additional commands, e-mail: users-h...@qpid.apache.org >> >> > > -- > Tim Bish > twitter: @tabish121 > blog: http://timbish.blogspot.com/ > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org > For additional commands, e-mail: users-h...@qpid.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For additional commands, e-mail: users-h...@qpid.apache.org