Failed Sends on some modified objects

  • We have an issue with our diagnostic viewer which causes cine clips to sometimes to blend in the stack of stills when we'd like to have them easily identifiable as cine clips.

    To split these clips, we built a lua which generates a new (and consistent) series instanceuid and changes the series description to CINE. This fires properly, but at times it writes an object which will not successfully export. This is not consistent. I do not know how to make it fail and I do not have access to a study which will cause this issue. We see it several times a month.

    I noticed yesterday that when this file is written, it's a DCM file instead of a v2.

    We use FileNameSyntax=3 so I'd expect to see a v2 object.

    Here is the lua:

  • Hi,

    if you change the seriesinstanceuid witout changing the sopinstance uid you create potentially an inconsistent dataset where the same sop belowng to different series. I have a command (newuids) that wlll generate new uids for all uids. If you set study to its orginal afterwards you create a copy.


  • Hi Marcel

    We have this method in place because we wanted to ensure the UID generation was unique per exam and not per send. With newuids, someone could send the same dataset repeatedly and duplicate it, couldn't they?

    When you mention inconsistent dataset, where would the inconsistency be? The filesystem / the database?

    The edit occurs on a single object, creating a new series. I am not clear on how an inconsistency with the UIDs can exist. This runs on an ImportConverter, so it should all be pre-filesystem & db, right?

  • Hi,

    newuids are kept in the UIDMODS database, so any call of it will return the same UIDs.

    You are right, but changing UIDS manually is asking for trouble, the inconsitency would be in the image, where only one version could be stored in the database the other rejected.


  • Hi,

    I maintain that you should change SeriesUID and InstanceUID. But I agree this is likely not the failure. You can anyway use:

    Data.SeriesInstanceUID = changeUID(Data.SeriesInstanceUID)

    Data.SOPInstanceUID = changeUID(Data.SOPInstanceUID)

    These will always change consistently


  • We have 4 nodes in a balanced cluster each with their own DB. Would the changeUID function result in differing UIDs on each environment if repeated sends were balanced to other nodes?

    We haven't really considered using shared storage or a shared db for these systems, but doing so could possibly help with tasks like this.

  • This occurred today. I was able to use the webserver to move the object to the destination successfully. It's got something to do with the object in memory in the ExportConverter.

    I wonder if this could be resolved by adding some sort of a time buffer on the ImportConverter so that cine clips aren't released to export converters for X number of seconds.

Participate now!

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