Virtual server - remote C-MOVE DICOM Error

  • Hi,


    I noticed one behaviour that I cannot explain properly. I have a conquest setup as virtual server (in this case acting as virtual server for another conquest instances). I have a lua script in the virtual server that tries to CMOVE DICOM Study to specific defined AET (but still store it locally on the virtual):



    What often happens is that the CMOVE does not copy all the data (even thou the status string all images transferred). I get this error in the log:


    Code
    Virtual server - remote C-MOVE DICOM Error code c004 (49156) from OTHERCONQUEST


    and then I see the virtual server trying to fetch data from the second defined conquest instance (it will not find them there - there are only on the first one). Then comes the messages:


    Code
    *** missing file: MAG0.0 ...
    *** Could still not find file: ...
    ...


    Then when I try to execute the same move second time, the virtual actually collect the missing data from the other conquest node (where it failed before) and sends complete study to defined AET.


    Maybe somebody has easy solution for this. In a worst case I am thinking to change the script to the the first dicommove between data node and virtual server (repetitively until it collects all images) and then second dicommove to specific AET.


    best


    Tomas

  • Hi,


    e.g. is this what happens?


    SERVER1, set to be virtualserver for OTHERCONQUEST

    you try to move images on otherconquest to AE

    reports remote C-MOVE DICOM Error code c004 (49156) from OTHERCONQUEST

    reports missing file


    OTHERCONQUEST

    no message?


    Error c004 is a "Retrieve: move search failed", this happens if:

    database cannot be opened

    query fails

    cannot bind column

    These would happen in OTHERCONQUEST


    Can you share:

    OS

    what version (for both conquests)

    what database (on both conquests)

    any messages on OTHERCONQUEST, with debug log on?

    it could be you are out of database connections.


    Marcel

  • Hi,


    thanks for quick response. So I have seen this in two different setups (one research virtual in front of research nodes and one clinical virtual in front of clinical nodes):


    * the virtual server is always Debian, 1.4.17d, with postgresql

    * the other research node is Debian, 1.4.17d, with postgresql

    * the other clinical node is Debian, 1.4.17d, with sqlite


    No error shown on the actual data nodes, only warning:


    Code
    Warning: use of as is compression for outgoing associations not fully implemented


    Actual the out of database connections case would explain it (the other errors you describe sound more like the data would never be found, but I can fetch them on second movedicom execution). Do you know it is possible to setup connection pool for postgresql connection on conquest?

  • Hi,


    there is no connection pool implemented. MySQL on windows had a similar issue which was fixed by setting:


    TcpTimedWaitDelay = 30

    MaxUserPort = 65534


    Can you enable debug logging on the data nodes?


    Marcel

  • No the database is not shared, each node has its own database (actually each node has its own DB server).


    I did increase the debug lvl but I really did not catch any error on data node. I will continue troubleshooting this, when I find something I will came back to you.


    Could it help to change the behaviour of virtual server to fetch data per series instead of image by image (could lover the amount of queries on DB) or are there any bad consequences with such change.


    I will probably also try to watch the number of active DB connections (default max is 100).

  • Hello friends

    i installed conquest and configure it with the scanner

    I noticed that some exams are not archived correctly for example the doctor sends an exam of 1000 image but in the storage bay I find a number of image lower than 1000

  • Hi Marcel,


    it does not seem to be problem with DB connections (pg does not report problem and the number of connections is low). Changing


    VirtualServerPerSeries0 = 1


    improves the situation but, I can still get c004 error reported by virutal (the data node stays error free) only not so often.


    When I adapt lua script to execute dicommove from first from all data nodes to virtual and then from virtual to final destination AET, this seem to work nicely. Do you know... is it possible to get list of configured data nodes on virtual server via lua (so that I don't have to hardcode them)?


    Tomas

  • Ok,


    can you change the dgate from the node that reports c004 to 1.5.0beta3. A compiled sqlite version is on Github. I am curious if the latest version has the same problem. Interesting the C004 comes from a regular MOVE. Does not make sense to me.


    Lua has a method get_amap(index) that returns the list.


    Marcel

  • Hi

    i want to know if there is a complete file dgatesop.lst that confugired with all the SOP.

    i find this error in serverstatus

    ***Length = 52

    ***Group Length = 0

    ***Continuing parsing

    ***Explicit_ParseRaw encountered an invalid element length during load of DCM file (in 00081150)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!