
==============================
== Orthanc database plugins ==
==============================

-----------------------
Common - Database index
-----------------------

* Implement "large queries" for:
  - updating all metadata of a resource at once
  - update all maindicomtags of 4 resource levels at once


---------------------
Common - Storage area
---------------------

* Implement the "StoreDicom" option from the default filesystem
  storage area to run MySQL/PostgreSQL storage in index-only mode:
  https://orthanc.uclouvain.be/book/contributing.html

* Performance: Add a pool of connections to PostgreSQL/MySQL, as
  already done in the database index plugins

----------
PostgreSQL
----------

* upgrade to libpq 18.1

-----
MySQL
-----

* Store revisions for metadata and attachments in MySQL (this is
  already implemented in PostgreSQL - done in the mainline)

* MySQL performance => implement GlobalProperty_GetTotalSizeIsFast:
  https://groups.google.com/d/msg/orthanc-users/kSR4a110zDo/D7e4ITR8BwAJ
  https://discourse.orthanc-server.org/t/when-running-housekeeping-mysqld-exe-searching-and-dicom-transfer-is-slow/4921/9

* Add index to speed up wildcard search, as already done in PostgreSQL:

  - https://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html +
    ALTER TABLE table ADD FULLTEXT index_name(column1);

  - https://dev.mysql.com/doc/refman/8.0/en/index-btree-hash.html


* Add primary keys in DeletedFiles and DeletedResources
  https://discourse.orthanc-server.org/t/missing-primary-keys-on-mysql/6307/3
  The patch has not been integrated yet because we need to handle DB schema upgrade -> to be done for the next release.

----
ODBC
----

* Implement labels