Bug #443
closedstorescp's option --inetd and --exec-on-eostudy are probably mutually exclusive
0%
Description
Check whether this combination of options should be forbidden by storescp (pretty much like --fork and --exec-on-eostudy on Windows systems).
See the following forum posting for details: http://forum.dcmtk.org/viewtopic.php?f=1&t=3534&p=14204#p14204
Updated by Jörg Riesmeier almost 13 years ago
Also see this posting: http://forum.dcmtk.org/viewtopic.php?f=1&t=3545
Updated by Uli Schlachter almost 13 years ago
- Status changed from New to Resolved
Fixed with commit d6b29fe15455da02927c. Solution was just to make --inetd and --exec-on-eostudy conflicting. The problem here is that the end of study detection works across different associations. Thus if you use storescu twice to transfer two images that are in the same study with two separate associations, they will only be counted as a single end of study. For this reason, the code doesn't trigger an end of study when an association is released. This problem also affects --fork on unix (tested with "storescp --exec-on-eostudy 'date;echo eostudy #p' --exec-on-reception 'date;echo reception #p' 1234 --output-directory /tmp/ --sort-conc-studies dcm-foo --fork --eostudy-timeout 1", no study is ever ended).
It might make sense to fix this differently in the future:
When we are exiting and a study end is still pending (lastStudySubdirectoryPathAndName is not empty), just execute that study end now. This means that with --fork and --inetd studies across different associations can't be detected, but at least it doesn't miss any studies and --exec-on-eostudy can be used.
(Patches welcome :P)
Updated by Uli Schlachter almost 13 years ago
- Status changed from Resolved to Closed