comparison TODO @ 4986:a25e74fad379

todo
author Alain Mazy <am@osimis.io>
date Tue, 26 Apr 2022 16:14:49 +0200
parents 2cfa50d8eb60
children c49dd5a480e7
comparison
equal deleted inserted replaced
4985:c767035fff77 4986:a25e74fad379
124 https://groups.google.com/d/msg/orthanc-users/wPl0g5mqZco/5X1Z8tEzBgAJ 124 https://groups.google.com/d/msg/orthanc-users/wPl0g5mqZco/5X1Z8tEzBgAJ
125 * Check Big Endian transfer syntax in ParsedDicomFile::EmbedImage and 125 * Check Big Endian transfer syntax in ParsedDicomFile::EmbedImage and
126 DicomImageDecoder 126 DicomImageDecoder
127 * Strict hierarchical C-FIND: 127 * Strict hierarchical C-FIND:
128 https://groups.google.com/d/msg/orthanc-users/VBHpeGVSNKM/tkaVvjWFBwAJ 128 https://groups.google.com/d/msg/orthanc-users/VBHpeGVSNKM/tkaVvjWFBwAJ
129 * report DIMSE error codes in Rest API and job status for /store /query /move /retrieve
130 * Log outgoing C-Find queries
129 131
130 --------- 132 ---------
131 Long-term 133 Long-term
132 --------- 134 ---------
133 135
159 in metadata on some events like NewSeries + DeletedSeries (same for other computer tags). 161 in metadata on some events like NewSeries + DeletedSeries (same for other computer tags).
160 OtherTags that could be saved in Metadata as well: 162 OtherTags that could be saved in Metadata as well:
161 - ModalitiesInStudy 163 - ModalitiesInStudy
162 - all computed counters at series/study/patient level 164 - all computed counters at series/study/patient level
163 - RequestAttributesSequence (sequence that must be included in all DicomWeb QIDO-RS for series) 165 - RequestAttributesSequence (sequence that must be included in all DicomWeb QIDO-RS for series)
166
167 * Long-shot & not sure it is even feasible at all: try to reduce memory usage by implementing streaming
168 when receiving DICOM instances from the Rest API or from DICOM and store files directly to disk as they
169 are received. Note that this would likely require rewriting large parts of Orthanc. Note sure that
170 would be compatible with Transcoding.
171 Use case: receiving 10 1GB instances in parallel can consume up to 20 GB
172 Alternative option 1: write an "external application/plugin" that would take care of these receptions, write the
173 file at the right place and send a signal to Orthanc to "adopt" the file.
174 Alternative option 2: declare a memory resource (X GB) that is available for reception. Every time
175 Orthanc starts receiving a file, it reserves the memory or twice the memory (through a Semaphore)
176 if no memory is available, it waits and possibly timeouts returning a 503 or DIMSE A700 (out of resources).
177 This would at least protect from "out of memory" crashes.
178
164 179
165 ======== 180 ========
166 Database 181 Database
167 ======== 182 ========
168 183