Mercurial > hg > orthanc-book
annotate Sphinx/source/developers/db-versioning.rst @ 1113:a588960a72e5 default tip
spelling
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Mon, 28 Oct 2024 09:23:08 +0100 |
parents | d2be251975d1 |
children |
rev | line source |
---|---|
0 | 1 .. _db-versioning: |
2 | |
3 Database versioning | |
4 =================== | |
5 | |
6 Orthanc stores the index of the DICOM instances as an embedded `SQLite | |
358
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
336
diff
changeset
|
7 database <https://www.sqlite.org/index.html>`_. The schema of this |
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
336
diff
changeset
|
8 database has evolved across the versions of Orthanc, making the |
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
336
diff
changeset
|
9 database incompatible between versions. This page clarifies which |
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
336
diff
changeset
|
10 versions of Orthanc are compatible with other versions. |
0 | 11 |
12 Recent versions (post-0.3.1) | |
13 ---------------------------- | |
14 | |
15 Recent versions of Orthanc (starting 0.3.1, inclusive) include | |
16 information about the version of the DB schema in the SQLite table | |
17 ``GlobalProperties`` under the property with index 1. Versions with the | |
18 same version of the DB schema are compatible with each other. | |
19 | |
20 When some version of Orthanc starts up, it checks whether it is | |
21 compatible with the database version. Orthanc will **fail to start if | |
22 it is not compatible with the database version**. Here is the | |
23 compatibility matrix: | |
24 | |
25 =============================== ===== ===== ===== ===== ===== | |
26 Version DB v2 DB v3 DB v4 DB v5 DB v6 | |
27 =============================== ===== ===== ===== ===== ===== | |
28 Mainline u u u x | |
1075 | 29 Orthanc 0.9.5 - Orthanc 1.12.4 u u u x |
0 | 30 Orthanc 0.8.5 - Orthanc 0.9.4 u u x |
31 Orthanc 0.7.3 - Orthanc 0.8.4 u x | |
32 Orthanc 0.4.0 - Orthanc 0.7.2 x | |
33 Orthanc 0.3.1 x | |
34 =============================== ===== ===== ===== ===== ===== | |
35 | |
36 *Note 1:* "u" means that an automatic upgrade of the DB schema is | |
37 available, without having to :ref:`migrate the database | |
38 <replication>`. | |
39 | |
40 *Note 2:* Starting with Orthanc 0.9.5, the option ``--upgrade`` must be provided | |
41 on the command-line to allow Orthanc to upgrade the database schema. | |
42 | |
1016 | 43 *Note 3:* Each DB plugin like (:ref:`PostgreSQL <postgresql>`, |
44 :ref:`MySQL <mysql>` or :ref:`ODBC <odbc>`) also maintains its own *revision* | |
45 number. The DB full version information is therefore the combination | |
46 of the *version* and the *revision*. | |
47 | |
0 | 48 |
49 Early versions (pre-0.3.0) | |
50 -------------------------- | |
51 | |
52 Early versions of Orthanc (up to version 0.3.0, inclusive) **do not | |
53 check the version** of the database schema. Because of this, these | |
54 early versions are incompatible with all the other versions. Pay | |
55 attention to the fact that no compatibility check is done in these | |
56 versions, which may result in a corrupted database. |