rbeckman-nextgen / test-mc3

0 stars 0 forks source link

DICOM Writer incorrectly shows SENT status when send failed #4246

Open rbeckman-nextgen opened 4 years ago

rbeckman-nextgen commented 4 years ago

The send method of DcmSnd catches and swallows exceptions that should be propagated back to DICOMDispatcher in order to correctly set the response status.

User in Slack sending from one mirth instance to another reported experiencing missing images due to VPN outages where the sending channel was showing SENT, but it was never received.

WARN 2019-03-26 12:37:20,540 [DCMSND-16087] org.dcm4che2.net.Association: i/o exception in State Sta1 java.net.SocketException: Socket closed at java.net.SocketInputStream.read(SocketInputStream.java:204) at java.net.SocketInputStream.read(SocketInputStream.java:141) at org.dcm4che2.net.PDUDecoder.readFully(PDUDecoder.java:101) at org.dcm4che2.net.PDUDecoder.nextPDU(PDUDecoder.java:155) at org.dcm4che2.net.Association.run(Association.java:882) at java.lang.Thread.run(Thread.java:748) ERROR 2019-03-26 12:37:20,540 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: java.net.SocketException: Connection timed out (Write failed) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at java.net.SocketOutputStream.socketWrite0(Native Method) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at java.net.SocketOutputStream.write(SocketOutputStream.java:155) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.PDUEncoder.writePDU(PDUEncoder.java:186) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.PDUEncoder.writePDataTF(PDUEncoder.java:141) ERROR 2019-03-26 12:37:20,541 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.Association.writePDataTF(Association.java:1032) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.State$Sta6.sendPDataTF(State.java:247) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.Association.sendPDataTF(Association.java:1024) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.PDUEncoder.flushPDataTF(PDUEncoder.java:459) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.PDUEncoder.copyFrom(PDUEncoder.java:489) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.tool.dcmsnd.DcmSnd$DataWriter.writeTo(DcmSnd.java:1403) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.PDUEncoder.writeDIMSE(PDUEncoder.java:409) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.Association.invoke(Association.java:763) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.Association.cstore(Association.java:390) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.net.Association.cstore(Association.java:381) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at org.dcm4che2.tool.dcmsnd.DcmSnd.send(DcmSnd.java:1244) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.connectors.dimse.DICOMDispatcher.send(DICOMDispatcher.java:226) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.DestinationConnector.handleSend(DestinationConnector.java:888) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.DestinationConnector.process(DestinationConnector.java:518) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.DestinationChain.doCall(DestinationChain.java:121) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.DestinationChain.call(DestinationChain.java:63) ERROR 2019-03-26 12:37:20,542 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.Channel.process(Channel.java:1759) ERROR 2019-03-26 12:37:20,543 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.Channel.processSourceQueue(Channel.java:1854) ERROR 2019-03-26 12:37:20,543 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at com.mirth.connect.donkey.server.channel.Channel.run(Channel.java:1840) ERROR 2019-03-26 12:37:20,543 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: at java.lang.Thread.run(Thread.java:748) ERROR 2019-03-26 12:37:20,543 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] Server: ERROR: Failed to send - /tmp/mirthconnect/temp5078364229765155099tmp: Connection timed out (Write failed) WARN 2019-03-26 12:37:20,543 [DICOM Sender Process Thread on Client DICOM (1282177a-c5a4-4875-8b8d-14bf95fae678), To AWS ELB (4)] org.dcm4che2.net.Association: unable to send A-RELEASE-RQ in state: Sta1

Imported Issue. Original Details: Jira Issue Key: MIRTH-4390 Reporter: agermano Created: 2019-03-26T14:08:29.000-0700