Program Hangs on import / How to filter

  • I was given a task to consolidate 5 External HDDs of images to reconstruct a PACS from another system that crashed. All the drives have duplicate backup data, (and some new data) and some files are corrupt (Drive recovery attempts). I'm trying to use conquest 1.14.19d1 using either WatchFolder or MAG0/incoming to dump all .dcm files and save to mysql db with proper naming convention on MAG0. But every time it comes to a bad file, the import retries that file every 5s indefinitely until I stop the service, remove the file, and restart the service. Is there any way I can script it to move the bad file to a /bad directory to figure out later and keep processing the rest of the files?


    Examples:

    Nov 6 01:13:17 pacs conquest-server[12427]: ***(Dyn) Encountered an invalid group order during load of DCM file (after 00b80000)

    Nov 6 01:13:17 pacs conquest-server[12427]: ***[AddImageFile] /storage/fs1/incoming/1.2.392.200036.9123.100.12.11.17025.20140815150338.3.21.dcm -FAILED: Error on Load


    Thanks in advance.

  • Hi,


    there is a script item called:


    RejectedImageConverter0 =


    where 'Filename' is set to to the offending filename. This gets called after conquest retries 30 times x 5 seconds, so it does take a while. The retry is there to accept incomplete files as they come in.


    This could do the job. e.g.


    [lua]

    RejectedImageConverter0 = os.remove(FileName)


    Marcel

  • Did you change anything?


    In any case, the long retry is there to allow somebody to copy say a 1GB file into incoming over a slow link. It will then load correctly when the copy is done.


    Of course alternatives to the incoming folder are:


    copy the data to the storage folder and do a regen.

    or

    write a lua script that reads each file and puts it in the server.

    or

    write a shell file to add files to the server using dgate -- commands


    The lua program would be the most flexible.


    Marcel

  • I didn't change anything, it was processing, then stopped.

    I tried your suggestion of a shell script with dgate --commands, and it worked for a short while, and then on certain files, the dgate process goes to 100% CPU, and hangs.

    Here is my script:

    Script Output:

    dgate output:

    and top:


    And I have to restart dgate service each time to get the CPU usage to come back to normal. I'm not sure if it is memory, mysql, or what.


    Thank you again.

  • Restarted both, numerous times. And I have to modify dicom.ini each time, because I have an export filter that I have to disable when importing, but when not importing the old, they need the export filter for sending new studies.

  • Hm,


    sorry about that. But the only memory conquest holds is in the database. So I get it that the server runs fine except for addimagefile. Can you try dgate --addlocalfile:filename instead just for information? Is there something strange with the filenames?


    regards,


    Marcel

Participate now!

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