Issue42

Title Fails to modify a DICOM video file
Priority bug Status resolved
Superseder Nosy List admin
Assigned To
Keywords Orthanc Core

Created on 2017-03-28.13:41:04 by admin, last changed by admin.

Files
File name Uploaded Type Edit Remove
test_720.dcm admin, 2020-06-29.15:18:22 application/dicom
Messages
msg189 (view) Author: admin Date: 2017-03-28.13:41:04
[BitBucket user: Alain Mazy]
[BitBucket date: 2017-03-28.11:41:04]

* upload the attached video files
* issue a /modify request at the patient level

getting this error message:
E0328 13:36:56.733838 DicomInstanceToStore.cpp:83] Unable to serialize a DICOM file to a memory buffer
msg190 (view) Author: admin Date: 2020-06-29.15:18:22
[Bugzilla user: s.jodogne@gmail.com]
[Bugzilla date: 2020-06-29T13:18:22+00:00]

Created attachment 86
test_720.dcm
msg191 (view) Author: admin Date: 2017-07-05.12:51:29
[BitBucket user: Sébastien Jodogne]
[BitBucket date: 2017-07-05.10:51:29]

Here is how to reproduce the issue:

```
$ sudo docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc:1.2.0
$ python ~/Subversion/orthanc/Resources/Samples/ImportDicomFiles/ImportDicomFiles.py localhost 8042 ./test_720.dcm orthanc orthanc
$ curl -v -u orthanc:orthanc http://localhost:8042/patients/da128605-e040d0c4-310615d2-3475da63-df2d1ef4/modify -X POST -d '{"Replace":{"PatientID":"Hello","PatientName":"Sample patient name"}}'
```

The bug is inside DCMTK 3.6.0, and does not show up if using DCMTK 3.6.1 snapshots. The solution consists in setting `-DUSE_DCMTK_361=ON` when invoking CMake.
msg192 (view) Author: admin Date: 2017-07-05.13:18:42
[BitBucket user: Sébastien Jodogne]
[BitBucket date: 2017-07-05.11:18:42]

The Docker images > 1.2.0 (including "master/mainline" version) are now built with `-DUSE_DCMTK_361=ON`, [given this changeset](https://github.com/jodogne/OrthancDocker/commit/e75db804930bf054e05955e7aa30b1e1c28b6cac).
msg193 (view) Author: admin Date: 2017-07-05.13:58:07
[BitBucket user: Sébastien Jodogne]
[BitBucket date: 2017-07-05.11:58:07]

The latest Docker images now succeeds to `/modify` at the patient level:

```
$ sudo docker pull jodogne/orthanc
$ sudo docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc
$ python ~/Subversion/orthanc/Resources/Samples/ImportDicomFiles/ImportDicomFiles.py localhost 8042 ./test_720.dcm orthanc orthanc
$ curl -v -u orthanc:orthanc http://localhost:8042/patients/da128605-e040d0c4-310615d2-3475da63-df2d1ef4/modify -X POST -d '{"Replace":{"PatientID":"Hello","PatientName":"Sample patient name"}}'
```
History
Date User Action Args
2026-07-29 15:51:19admincreate