Alex Rudyy created QPID-8042:
--------------------------------

             Summary: [Broker-J][AMQP 1.0] Broker fails to open connection with 
pipelined sasl frames
                 Key: QPID-8042
                 URL: https://issues.apache.org/jira/browse/QPID-8042
             Project: Qpid
          Issue Type: Bug
          Components: Broker-J
    Affects Versions: qpid-java-broker-7.0.0
            Reporter: Alex Rudyy


Opening of connection with pipelined SASL header, sasl mechanism frame (for 
plain), sasl init (with valid SASL initial response), protocol header and 
connection open frame fails with the following exception
{noformat}
org.apache.qpid.server.util.ConnectionScopedRuntimeException: Connection is 
closed before being fully established: specified frame size 1095586128 larger 
than maximum frame header size 4096
        at 
org.apache.qpid.server.protocol.v1_0.AMQPConnection_1_0Impl.closeConnection(AMQPConnection_1_0Impl.java:1176)
        at 
org.apache.qpid.server.protocol.v1_0.AMQPConnection_1_0Impl.handleError(AMQPConnection_1_0Impl.java:783)
        at 
org.apache.qpid.server.protocol.v1_0.framing.FrameHandler.parse(FrameHandler.java:215)
        at 
org.apache.qpid.server.protocol.v1_0.AMQPConnection_1_0Impl.lambda$received$11(AMQPConnection_1_0Impl.java:1316)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.apache.qpid.server.protocol.v1_0.AMQPConnection_1_0Impl.received(AMQPConnection_1_0Impl.java:1291)
        at 
org.apache.qpid.server.transport.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:134)
        at 
org.apache.qpid.server.transport.NonBlockingConnection.processAmqpData(NonBlockingConnection.java:610)
        at 
org.apache.qpid.server.transport.NonBlockingConnectionPlainDelegate.processData(NonBlockingConnectionPlainDelegate.java:58)
        at 
org.apache.qpid.server.transport.NonBlockingConnection.doRead(NonBlockingConnection.java:496)
        at 
org.apache.qpid.server.transport.NonBlockingConnection.doWork(NonBlockingConnection.java:270)
        at 
org.apache.qpid.server.transport.NetworkConnectionScheduler.processConnection(NetworkConnectionScheduler.java:134)
        at 
org.apache.qpid.server.transport.SelectorThread$ConnectionProcessor.processConnection(SelectorThread.java:570)
        at 
org.apache.qpid.server.transport.SelectorThread$SelectionTask.performSelect(SelectorThread.java:361)
        at 
org.apache.qpid.server.transport.SelectorThread$SelectionTask.run(SelectorThread.java:97)
        at 
org.apache.qpid.server.transport.SelectorThread.run(SelectorThread.java:528)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at 
org.apache.qpid.server.bytebuffer.QpidByteBufferFactory.lambda$null$0(QpidByteBufferFactory.java:464)
        at java.lang.Thread.run(Thread.java:745)
{noformat}

As per spec section {{2.4.2  Pipelined Open}}
{quote}
For applications that use many short-lived connections, it MAY be desirable to 
pipeline the connection negotiation process.  A peer MAY do this by starting to 
send subsequent frames before receiving the partner’s connection header or open 
frame.  This is permitted so long as the pipelined frames are known a priori to 
conform to the
capabilities  and  limitations  of  its  partner. 
{quote}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to