comparison Sphinx/source/faq/features.rst @ 642:a76d83a00c68

definition of stable resources
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 23 Apr 2021 10:34:13 +0200
parents 38face2a84a4
children 411e82bb3a9f
comparison
equal deleted inserted replaced
641:a8925284df0b 642:a76d83a00c68
267 Jobs 267 Jobs
268 ---- 268 ----
269 269
270 Check out the :ref:`advanced features of the REST API <jobs>`. 270 Check out the :ref:`advanced features of the REST API <jobs>`.
271 271
272
273
274 .. _stable-resources:
275
276 Stable resources
277 ----------------
278
279 A DICOM resource (patient, study or series) is referred to as
280 **stable** if it has not received any new instance for a certain
281 amount of time.
282
283 This amount of time is configured by the the option ``StableAge`` in
284 the :ref:`configuration file <configuration>`.
285
286 When some resource becomes stable, an event is generated as a log
287 entry in the ``/changes`` :ref:`URI in the REST API <changes>`, a
288 :ref:`Lua callback <lua-callbacks>` is invoked, the callback function
289 registered by ``OrthancPluginRegisterOnChangeCallback()`` in
290 :ref:`C/C++ plugins <creating-plugins>` is executed, as well as the
291 :ref:`Python callback <python-changes>` registered by
292 ``orthanc.RegisterOnChangeCallback()``.
293
294 The ``IsStable`` field is also available to get the status of an
295 individual patient/study/series using the REST API of Orthanc.
296
297 In the multiple readers/writers scenario enabled since Orthanc 1.9.2,
298 each Orthanc server is considered separately: The "stable" information
299 is monitored by threads inside the Orthanc process, and is **not**
300 shared in the database. In other words, the "stable" information is
301 local to the Orthanc server that is queried. Synchronization between
302 multiple readers/writers must be implemented at a higher level
303 (e.g. using a distributed `message-broker system
304 <https://en.wikipedia.org/wiki/Message_broker>`__ such as RabbitMQ
305 that is fed by an Orthanc plugin).