Source: dcmtk
Severity: important
Tags: patch

This issue was reported by Sebastien Jodogne <s.jodo...@chu.ulg.ac.be> to
the Debian Med mailing list but it should actually be a bug report:


Hi all,

After updating my development PC from Ubuntu 12.10 to Ubuntu 14.10 LTS, 
I have observed a very severe degradation in the performance of 
"storescp" from the DCMTK package.

Sending 100 DICOM files to storescp took 25 seconds instead of less than 
2 seconds in my previous version of Ubuntu:

 >>>>>
# time storescu localhost 4242 ./MR*
real    0m25.627s
<<<<<

This led me to the discovery of a thread on the DCMTK forum that 
reported the same performance problem [1]. In this thread, it is 
suggested to disable the "setTCPBufferLength()" function. The 
corresponding patch is attached to this mail.

When applying this patch, the reported transfer times are as follows:

 >>>>>
# time storescu localhost 4242 ./MR*
real    0m1.118s
<<<<<

I think that this patch might be extremely useful to be integrated in 
the official Debian DCMTK package.

Regards,
Sébastien-


[1] http://forum.dcmtk.org/viewtopic.php?f=1&t=4009
diff -u -r dcmtk-3.6.0/dcmnet/libsrc/dul.cc dcmtk-3.6.0.patched/dcmnet/libsrc/dul.cc
--- dcmtk-3.6.0/dcmnet/libsrc/dul.cc	2010-12-01 09:26:36.000000000 +0100
+++ dcmtk-3.6.0.patched/dcmnet/libsrc/dul.cc	2015-05-15 17:03:50.762451757 +0200
@@ -1840,7 +1840,7 @@
     }
 #endif
 #endif
-    setTCPBufferLength(sock);
+    //setTCPBufferLength(sock);
 
 #ifndef DONT_DISABLE_NAGLE_ALGORITHM
     /*
diff -u -r dcmtk-3.6.0/dcmnet/libsrc/dulfsm.cc dcmtk-3.6.0.patched/dcmnet/libsrc/dulfsm.cc
--- dcmtk-3.6.0/dcmnet/libsrc/dulfsm.cc	2010-12-01 09:26:36.000000000 +0100
+++ dcmtk-3.6.0.patched/dcmnet/libsrc/dulfsm.cc	2015-05-15 17:03:55.570451952 +0200
@@ -2417,7 +2417,7 @@
           return makeDcmnetCondition(DULC_TCPINITERROR, OF_error, msg.c_str());
         }
 #endif
-        setTCPBufferLength(s);
+        //setTCPBufferLength(s);
 
 #ifndef DONT_DISABLE_NAGLE_ALGORITHM
         /*

Reply via email to