Rafael H. Schloming commented on PROTON-804:

rschloming:  basically what happens is the triggering connection sends a 
sasl-init frame and the dies
rschloming:  and the server side of the connection reports a "No valid protocol 
header found"
rschloming:  from line 212 of transport.c
rschloming:  and then the output gets stuck in pn_io_layer_output_null
rschloming:  which just always returns 0
stitchedup:  I doubt that would have worked before the autodetect code either 
(but the symptom would have been different)
stitchedup:  because the sasl code has no way to deal with premature failure
rschloming:  it's possible that your changes have simply made it more likely to 
occur if the eliminate pipelining on the client side
rschloming:  but I'm pretty sure it's a recent thing because it gets triggered 
very easily by a client that has a simple typo in it
rschloming:  i.e. just firing up and dying
stitchedup:  hmm, you should never get into the null layer after failure
rschloming:  yeah, I didn't think that looked right
stitchedup:  you will get there though 
rschloming:  it doesn't seem to do that if you just connect and then die 
without sending any data at all
stitchedup:  because if the server tries to do output before autodetect has 
happened it can't know what to output
rschloming:  sure, but it seems like failure should force a given response
rschloming:  failure should basically force it to assume "AMQP" on the output 
side I woudl think
rschloming:  since it is sending an amqp close frame to indicate the error
stitchedup:  ok It would really help it you pasted the above info into the bug 
itself the nuget about pn_io_..._null would have actually been useful

> the transport doesn't always shutdown its output properly
> ---------------------------------------------------------
>                 Key: PROTON-804
>                 URL: https://issues.apache.org/jira/browse/PROTON-804
>             Project: Qpid Proton
>          Issue Type: Bug
>            Reporter: Rafael H. Schloming
>            Assignee: Andrew Stitcher
>         Attachments: transport-test.patch
> I believe the issue is related to the autodetect code andrew added not too 
> long ago. I've attached a patch that has a test case with a relatively 
> minimal reproducer.

This message was sent by Atlassian JIRA

Reply via email to