Hello,
We run a fairly large Orthanc instance:
- ~440,000 studies, 90+ TB of DICOM storage, ~440 GB PostgreSQL index
- ~200 client workstations, mostly MicroDicom and RadiAnt, querying over DICOM C-FIND
"LimitFindResults": 350, so that queries without a date or PatientID can’t overload the server
We recently upgraded the OS from Debian 12 to Debian 13 and PostgreSQL from 15 to 17 using pg_upgradecluster. Current versions: Orthanc 1.12.7, PostgreSQL plugin 5.0, PostgreSQL 17.11.
Since the upgrade, Orthanc stops returning any results to C-FIND queries after a few days of uptime. Restarting Orthanc restores normal operation. While it is in this state:
- the REST API still responds (e.g. listing modalities works)
- W004 warnings keep appearing in the log, for example:
W0930 14:29:06.760337 DICOM-1 ResourceFinder.cpp:1193] W004: study has been stored with an old Orthanc version and does not have a MainDicomTagsSignature, you should POST to /studies/e1ed8e83-54c58f07-5894c2fd-76d6421f-4c08035c/reconstruct to update the list of tags saved in DB or run the Housekeeper plugin. Some MainDicomTags might be missing from this answer.
Most of our archive was stored with older Orthanc versions. We considered running the Housekeeper plugin, but estimate it would take about 6 months on this volume.
Our questions:
- What is the recommended way to debug this, and what should we collect when it happens?
- Would lowering
LimitFindResultsand increasingDicomScuTimeoutreduce the load on the database? - Would reconstructing all studies reduce the database load for C-FIND?
Relevant configuration: DicomThreadsCount 4, DicomScpTimeout 30, StorageAccessOnFind Always, PostgreSQL plugin IndexConnectionsCount 1.
Thank you.