You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Clifford Jansen (Jira)" <ji...@apache.org> on 2023/09/14 01:58:00 UTC

[jira] [Created] (PROTON-2763) Two final disconnect events possible from a raw connection

Clifford Jansen created PROTON-2763:
---------------------------------------

             Summary: Two final disconnect events possible from a raw connection
                 Key: PROTON-2763
                 URL: https://issues.apache.org/jira/browse/PROTON-2763
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-c
    Affects Versions: proton-c-0.39.0
            Reporter: Clifford Jansen
            Assignee: Clifford Jansen


In writing a new threaderciser for raw connections the following scenario can result in a state machine mixup and second disconnect.

If a pn_raw_connection_wake() occurs around the time that the first disconnect event is being consumed the task may be added to the global ready list for processing.  The batch done() processing will (correctly) defer the task cleanup until the task is next scheduled via the ready list.  However the raw connection forgets that it has already done the disconnect and restarts the state machine at the first disconnect stage, resulting in the second disconnect event.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org