Migrated to DCM4CHE Arc Light - Import archive from v2.18.3

344 views
Skip to first unread message

Ravi Malaviya

unread,
Dec 28, 2021, 11:05:46 PM12/28/21
to dcm4che
Hello Vrinda,

As per your guidance dcm4chee migration success on Linux machine but when i use same command on windows machine it has been given below error.
Please help how to migrate dcm4chee on windows machine.

D:\dicom2-data>findstr aes 2019 | curl -v -H "Content-Type: text/plain" --data-binary @- "http://192.168.1.190:8080/dcm4chee-arc/aets/HOPS/rs/instances/storage/fs3"
*   Trying 192.168.1.190...
* TCP_NODELAY set
* Connected to 192.168.1.190 (192.168.1.190) port 8080 (#0)
> POST /dcm4chee-arc/aets/HOPS/rs/instances/storage/fs3 HTTP/1.1
> Host: 192.168.1.190:8080
> User-Agent: curl/7.55.1
> Accept: */*
> Content-Type: text/plain
> Content-Length: 0
>
< HTTP/1.1 409 Conflict
< Connection: keep-alive
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Headers: origin, content-type, accept, authorization
< Access-Control-Allow-Credentials: true
< Transfer-Encoding: chunked
< Content-Type: application/dicom+xml
< Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS, HEAD
< Date: Tue, 28 Dec 2021 10:54:11 GMT
* HTTP error before end of send, stop sending
<
<?xml version="1.0" encoding="UTF-8"?><NativeDicomModel xml:space="preserve"><DicomAttribute keyword="RetrieveURL" tag="00081190" vr="UR"/></NativeDicomModel>* Closing connection 0
  

Vrinda Nayak

unread,
Dec 30, 2021, 6:51:53 AM12/30/21
to dcm4che
Check your server logs if there are any failure messages on importing instances. 409-CONFLICT indicates that none of the files could be imported successfully into the storage.

Petim

unread,
Jun 8, 2022, 10:02:38 AM6/8/22
to dcm4che
Hello Vrinda,

I am actually having a similar issue using version 5.22.6.

find 2018/5 -type f | curl -v -H "Content-Type: text/plain" --data-binary @- http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/rs/insta                               nces/storage/fs1
*   Trying ::1...
* Connected to localhost (::1) port 8080 (#0)
> POST /dcm4chee-arc/aets/DCM4CHEE/rs/instances/storage/fs1 HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.47.0
> Accept: */*
> Content-Type: text/plain
> Content-Length: 2779641
> Expect: 100-continue
>
< HTTP/1.1 100 Continue
< Content-Length: 0
* We are completely uploaded and fine
< HTTP/1.1 409 Conflict

< Access-Control-Allow-Headers: origin, content-type, accept, authorization
< Warning: /storage/fs1/2018/5/10/10/94C264EB/DFB151ED/DFB15911
< Date: Wed, 08 Jun 2022 13:53:55 GMT
< Connection: keep-alive
< Access-Control-Allow-Origin: *

< Access-Control-Allow-Credentials: true
< Transfer-Encoding: chunked
< Content-Type: application/dicom+xml
< Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS, HEAD
<
* Connection #0 to host localhost left intact
<?xml version="1.0" encoding="UTF-8"?><NativeDicomModel xml:space="preserve"><DicomAttribute keyword="ErrorComment" tag="00000902" vr="LO"><Value number="1">/                               storage/fs1/2018/5/10/10/94C264EB/DFB151ED/DFB15911</Value></DicomAttribute><DicomAttribute keyword="RetrieveURL" tag="00081190" vr="UR"/></NativeDicomModel>

Log from wildfly in all scanned studies: 

2022-06-08 12:40:25,396 INFO  [org.dcm4chee.arc.stow.ImportStorageRS] (default task-1) 172.1...@172.18.0.1->DCM4CHEE: Failed to import instance on storage SopClassUID=?, StoragePath=2018/5/10/10/94C264EB/DFB151ED/DFB15208: java.nio.file.NoSuchFileException: /storage/fs1/2018/5/10/10/94C264EB/DFB151ED/DFB15208
        at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
        at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:219)
        at java.base/java.nio.file.Files.newByteChannel(Files.java:370)
        at java.base/java.nio.file.Files.newByteChannel(Files.java:421)
        at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:420)
        at java.base/java.nio.file.Files.newInputStream(Files.java:155)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear//org.dcm4chee.arc.storage.filesystem.FileSystemStorage.openInputStreamA(FileSystemStorage.java:212)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear//org.dcm4chee.arc.storage.AbstractStorage.openInputStream(AbstractStorage.java:259)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS.getAttributes(ImportStorageRS.java:175)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS.importInstanceOnStorage(ImportStorageRS.java:157)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS.lambda$importInstanceOnStorage$0(ImportStorageRS.java:140)
        at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
        at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
        at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS.importInstanceOnStorage(ImportStorageRS.java:140)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS.importInstancesXML(ImportStorageRS.java:117)
        at deployment.dcm4chee-arc-ear-5.22.6-psql-secure-ui.ear.dcm4chee-arc-war-5.22.6-unsecure.war//org.dcm4chee.arc.stow.ImportStorageRS$Proxy$_$$_WeldClientProxy.importInstancesXML(Unknown Source)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:138)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:543)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:432)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$0(ResourceMethodInvoker.java:393)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.interception.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:358)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:395)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:364)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:337)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:440)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:229)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:135)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.interception.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:358)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:138)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:215)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:245)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:61)
        at org.jboss.restea...@3.12.1.Final//org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
        at javax.se...@2.0.0.Final//javax.servlet.http.HttpServlet.service(HttpServlet.java:590)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
        at io.underto...@2.1.3.Final//io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:173)
        at io.undert...@2.1.3.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.opentracing.contrib.opentracing-jaxrs2//io.opentracing.contrib.jaxrs2.server.SpanFinishingFilter.doFilter(SpanFinishingFilter.java:52)
        at io.undert...@2.1.3.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
        at org.wildfly.security.ely...@1.7.1.Final//org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.lambda$handleRequest$1(ElytronRunAsHandler.java:68)
        at org.wildfly.securi...@1.12.1.Final//org.wildfly.security.auth.server.FlexibleIdentityAssociation.runAsFunctionEx(FlexibleIdentityAssociation.java:103)
        at org.wildfly.securi...@1.12.1.Final//org.wildfly.security.auth.server.Scoped.runAsFunctionEx(Scoped.java:161)
        at org.wildfly.securi...@1.12.1.Final//org.wildfly.security.auth.server.Scoped.runAs(Scoped.java:73)
        at org.wildfly.security.ely...@1.7.1.Final//org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.handleRequest(ElytronRunAsHandler.java:67)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
        at io.under...@2.1.3.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.under...@2.1.3.Final//io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
        at io.under...@2.1.3.Final//io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
        at org.wildfly.security.elytron...@1.7.1.Final//org.wildfly.elytron.web.undertow.server.servlet.CleanUpHandler.handleRequest(CleanUpHandler.java:38)
        at io.under...@2.1.3.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
        at io.under...@2.1.3.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
        at io.under...@2.1.3.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
        at io.undert...@2.1.3.Final//io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
        at io.undert...@2.1.3.Final//io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
        at org.wildfly.ext...@20.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
        at io.undert...@2.1.3.Final//io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
        at io.under...@2.1.3.Final//io.undertow.server.Connectors.executeRootHandler(Connectors.java:370)
        at io.under...@2.1.3.Final//io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830)
        at org.jbos...@2.3.3.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
        at org.jbos...@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
        at org.jbos...@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
        at org.jbos...@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
        at java.base/java.lang.Thread.run(Thread.java:834)

Vrinda Nayak

unread,
Jun 9, 2022, 10:54:14 AM6/9/22
to dcm4che
What is your storage configuration? And from which directory have you run the command?
For recursive locations, you should use the folder path up to the directory which contains actual DICOM objects.

If your storage configuration refers to /storage/fs1 (as an actual filesystem location) and storage ID as fs1, then execute the following
cd /storage/fs1
find 2018/5/10/10/94C264EB/DFB151ED -type f | curl -v -H "Content-Type: text/plain" --data-binary @- 'http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/rs/instances/storage/fs1'
Reply all
Reply to author
Forward
0 new messages