[BitBucket user: Alain Mazy]
[BitBucket date: 2017-07-05.22:08:37]
I'm afraid there's not much we can do. Since the C-Move come from 2 independent Rest API requests, there is no way we could include them in the same scope and lock the connection for the duration of both moves.
Anyway, I'm not even sure that the ReusableDicomUserConnection::Locker would help if, anyway, the remote modality has requested a connection release @sjodogne any idea ?
@sjodogne: to summarize the events:
- Orthanc performs a C-Move to retrieve a first instance
- Orthanc, when starting the next C-Move realizes that a connection is still open and decide to reuse it.
- At the same time, once the first transfer is complete, the remote modality sends a request to close the connection (the DUL Peer Requested Release)
- Orthanc really closes the connection
- The second C-Move fails
Ideal solution: Orthanc should not allow the connection to close but I don't know if this is allowed by the DICOM protocol (too late to check ...) |