Hey,
So, I have a fresh xnat setup. In my services.properties I have "services.dicom.scp.receivedfileuser=admin" . This user has full data access on the site.
Now I am trying to send scans via scp (DicomBrowser) . In the prearchive the scan comes in but stays in 'Receiving' state forever. If I do a Rebuild, it goes into 'Error' state. (Not surprising, coz of the following).
Now if I go at the back end in the prearchive location, the whole directory structure is made, but no dicom files. (DICOM directpry is empty). Since, the rest of the directory structure is made, I assume there is no user permissions problem.
And the prearchive.log says
ERROR org.nrg.xnat.helpers.prearchive.PrearcUtils - /data/prearchive/20160120_142546860/7449124.xml is empty.
Well, this xml file wasn't made, it will definitely be 'empty' .
These are other relevant logs.
dicom.log
2016-01-26 19:59:06,117 [pool-1-thread-2] ERROR org.nrg.dcm.CStoreService - C-STORE operation failed
org.nrg.action.ServerException: java.io.IOException: Input/output error
at org.nrg.xnat.archive.GradualDicomImporter.call(GradualDicomImporter.java:460)
at org.nrg.dcm.CStoreService.doCStore(CStoreService.java:232)
at org.nrg.dcm.CStoreService.cstore(CStoreService.java:195)
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:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Input/output error
at sun.nio.ch.FileDispatcherImpl.lock0(Native Method)
at sun.nio.ch.FileDispatcherImpl.lock(FileDispatcherImpl.java:90)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1094)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1154)
at org.nrg.xnat.helpers.prearchive.PrearcUtils.lockFile(PrearcUtils.java:737)
at org.nrg.xnat.archive.GradualDicomImporter.call(GradualDicomImporter.java:455)
... 14 more
xdat.log
org.nrg.session.SessionBuilder$NoUniqueSessionException: No session found
at org.nrg.dcm.xnat.DICOMSessionBuilder.getStudyInstanceUID(DICOMSessionBuilder.java:232)
at org.nrg.dcm.xnat.DICOMSessionBuilder.<init>(DICOMSessionBuilder.java:184)
at org.nrg.dcm.xnat.DICOMSessionBuilder.<init>(DICOMSessionBuilder.java:192)
at org.nrg.dcm.xnat.DICOMSessionBuilder.<init>(DICOMSessionBuilder.java:212)
at org.nrg.xnat.archive.XNATSessionBuilder.buildDicomSession(XNATSessionBuilder.java:270)
at org.nrg.xnat.archive.XNATSessionBuilder.call(XNATSessionBuilder.java:203)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase$13.extSync(PrearcDatabase.java:1041)
and more...
I think it's got to do something with some permissions.
For what it's worth, the backend location for prearchive (and all other data) is NFS mounted.
Any help or hints to approach this problem would be appreciated.