Problem transferring DICOM data from PACS to XNAT

136 views
Skip to first unread message

Alex Hong

unread,
Oct 18, 2013, 2:46:27 PM10/18/13
to xnat_di...@googlegroups.com
Hello,

I am having some trouble transferring raw DICOM data from a PACS to my lab's XNAT server via C-STORE. The scans can be sent directly from the PACS software and show up in the XNAT prearchive as "Receiving," but eventually result in "ERROR."

I am not particularly adept at troubleshooting such issues and was wondering if anyone could shed some light on what the following log messages might mean (perhaps someone with a similar case?). Any and all help would be greatly appreciated. Thank you for your time!

2013-10-18 14:14:47,657 [pool-1-thread-2] ERROR org.nrg.dcm.CStoreService - C-STORE operation failed
org.nrg.action.ServerException: java.io.IOException: java.lang.NullPointerException
    at org.nrg.xnat.archive.GradualDicomImporter.call(GradualDicomImporter.java:431)
    at org.nrg.dcm.CStoreService.doCStore(CStoreService.java:231)
    at org.nrg.dcm.CStoreService.cstore(CStoreService.java:194)
    at org.dcm4che2.net.DicomServiceRegistry.process(DicomServiceRegistry.java:238)
    at org.dcm4che2.net.NetworkApplicationEntity.perform(NetworkApplicationEntity.java:1158)
    at org.dcm4che2.net.Association.onDimseRQ(Association.java:979)
    at org.dcm4che2.net.PDUDecoder.decodeDIMSE(PDUDecoder.java:530)
    at org.dcm4che2.net.Association.onPDataTF(Association.java:956)
    at org.dcm4che2.net.State$Sta6.receivedPDataTF(State.java:239)
    at org.dcm4che2.net.Association.receivedPDataTF(Association.java:952)
    at org.dcm4che2.net.PDUDecoder.nextPDU(PDUDecoder.java:231)
    at org.dcm4che2.net.Association.run(Association.java:851)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.io.IOException: java.lang.NullPointerException
    at org.nrg.dcm.Anonymize.anonymize(Anonymize.java:474)
    at org.nrg.dcm.Anonymize.anonymize(Anonymize.java:207)
    at org.nrg.xnat.archive.GradualDicomImporter.call(GradualDicomImporter.java:400)
    ... 14 more
Caused by: java.lang.NullPointerException
    at org.nrg.dcm.edit.ScriptApplicator.getVariables(ScriptApplicator.java:147)
    at org.nrg.dcm.Anonymize.setVariable(Anonymize.java:503)
    at org.nrg.dcm.Anonymize.access$000(Anonymize.java:61)
    at org.nrg.dcm.Anonymize$AnonymizeHelper.call(Anonymize.java:359)
    at org.nrg.dcm.Anonymize$AnonymizeHelper.call(Anonymize.java:324)
    at org.nrg.dcm.WorkOnCopyOp.run(WorkOnCopyOp.java:51)
    at org.nrg.transaction.Run.runTransaction(Run.java:8)
    at org.nrg.dcm.Anonymize.anonymize(Anonymize.java:470)
    ... 16 more

Alex Hong

unread,
Nov 25, 2013, 6:16:22 AM11/25/13
to xnat_di...@googlegroups.com
Replying for visibility; I haven't found a solution to this yet and was wondering if anyone had any insight. It seems like the anonymization script has something to do with it.

Herrick, Rick

unread,
Nov 25, 2013, 10:44:57 AM11/25/13
to xnat_di...@googlegroups.com

Hey Alex,

 

What version of XNAT are you on? In the current code base, the line on which that exception is thrown is nothing but a closing brace so it’s hard to diagnose the cause without knowing which version you have.

 

Rick Herrick

Sr. Programmer/Analyst

Neuroinformatics Research Group

Washington University School of Medicine

(314) 827-4250

--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xnat_discussi...@googlegroups.com.
To post to this group, send email to xnat_di...@googlegroups.com.
Visit this group at http://groups.google.com/group/xnat_discussion.
For more options, visit https://groups.google.com/groups/opt_out.




The material in this message is private and may contain Protected Healthcare Information (PHI). If you are not the intended recipient, be advised that any unauthorized use, disclosure, copying or the taking of any action in reliance on the contents of this information is strictly prohibited. If you have received this email in error, please immediately notify the sender via telephone or return mail.

David Gutman

unread,
Nov 25, 2013, 10:46:16 AM11/25/13
to xnat_di...@googlegroups.com
Alex another thing to check----  I forget the exact timeout (Rick may know).. but if your PACS is SLOOOOOW at sending files the Gateway can stop listening before it's had a chance to transfer all of the files it needs to build the session.....


--
David A Gutman, M.D. Ph.D.
Assistant Professor of Biomedical Informatics
Senior Research Scientist, Center for Comprehensive Informatics
Emory University School of Medicine

Herrick, Rick

unread,
Nov 25, 2013, 10:49:54 AM11/25/13
to xnat_di...@googlegroups.com

By default that timeout is 5 minutes. It’s currently set in the services.properties file by the variable services.rebuilder.interval, but if that’s not in there, it’s really setting the interval property for the sessionXmlRebuilderJobBean. I’m not sure if that’s it, but that’s certainly an option to try.

 

The other thing is that you can check that your site and project anon scripts are valid. I think we had a bug where an empty site-wide script would cause some problem, but I don’t think it was an NPE like this. Regardless, the work-around for that is just to put in a site-wide script that’s nothing but a comment, e.g.:

 

// empty anon script

 

That’s also worth a try.

 

Rick Herrick

Sr. Programmer/Analyst

Neuroinformatics Research Group

Washington University School of Medicine

(314) 827-4250

 

Reply all
Reply to author
Forward
0 new messages