# HG changeset patch # User Alain Mazy # Date 1716556288 -7200 # Node ID b6a6179a2a698f4a44b6ef15555588733eb88725 # Parent 4535194cbb8a827d9abcba365fec01ee0316e0bc TimezoneOffsetFromUTC is now ignored for C-Find matching diff -r 4535194cbb8a -r b6a6179a2a69 NEWS --- a/NEWS Wed May 22 16:06:30 2024 +0200 +++ b/NEWS Fri May 24 15:11:28 2024 +0200 @@ -34,12 +34,14 @@ Maintenance ----------- -* In C-Find queries including GenericGroupLength tags, Orthanc was still - extracting these tags from the storage although they were already ignored - and not returned in the response. - They are now removed from the query earlier to avoid this disk access that - could slow down the response time. Note that this seems to happen mainly - when the query originates from some GE devices (AWS). +* C-Find queries: + - In C-Find queries including GenericGroupLength tags, Orthanc was still + extracting these tags from the storage although they were already ignored + and not returned in the response. + They are now removed from the query earlier to avoid this disk access that + could slow down the response time. Note that this seems to happen mainly + when the query originates from some GE devices (AWS). + - TimezoneOffsetFromUTC is now ignored for matching. * The 0x0111 DIMSE Status is now considered as a warning instead of an error when received as a response to a C-Store. See https://discourse.orthanc-server.org/t/ignore-dimse-status-0x0111-when-sending-partial-duplicate-studies/4555/3 diff -r 4535194cbb8a -r b6a6179a2a69 OrthancFramework/Sources/DicomFormat/DicomTag.h --- a/OrthancFramework/Sources/DicomFormat/DicomTag.h Wed May 22 16:06:30 2024 +0200 +++ b/OrthancFramework/Sources/DicomFormat/DicomTag.h Fri May 24 15:11:28 2024 +0200 @@ -147,6 +147,7 @@ static const DicomTag DICOM_TAG_SERIES_TIME(0x0008, 0x0031); static const DicomTag DICOM_TAG_STUDY_DATE(0x0008, 0x0020); static const DicomTag DICOM_TAG_STUDY_TIME(0x0008, 0x0030); + static const DicomTag DICOM_TAG_TIMEZONE_OFFSET_FROM_UTC(0x0008, 0x0201); // Various tags static const DicomTag DICOM_TAG_SERIES_TYPE(0x0054, 0x1000); diff -r 4535194cbb8a -r b6a6179a2a69 OrthancServer/Sources/OrthancFindRequestHandler.cpp --- a/OrthancServer/Sources/OrthancFindRequestHandler.cpp Wed May 22 16:06:30 2024 +0200 +++ b/OrthancServer/Sources/OrthancFindRequestHandler.cpp Fri May 24 15:11:28 2024 +0200 @@ -439,9 +439,11 @@ const DicomElement& element = query.GetElement(i); const DicomTag tag = element.GetTag(); + // remove tags that are not used for matching if (element.GetValue().IsNull() || tag == DICOM_TAG_QUERY_RETRIEVE_LEVEL || - tag == DICOM_TAG_SPECIFIC_CHARACTER_SET) + tag == DICOM_TAG_SPECIFIC_CHARACTER_SET || + tag == DICOM_TAG_TIMEZONE_OFFSET_FROM_UTC) // time zone is not directly used for matching. Once we support "Timezone query adjustment", we may use it to adjust date-time filters but for now, just ignore it { continue; }