:warning: Please ensure you have read the upgrade notes from the PREVIOUS RELEASE, if upgrading from an earlier version
A new entity and API resource is introduced called Visualization
, located at /api/visualizations
. The visualization entity merges the previous ReportTable
and Chart
entities and API resources. The corresponding API endpoints /api/reportTables
and /api/charts
will be functional for some time but will be removed in the future and we recommend clients to migrate as soon as possible. This also implies that report tables and charts cannot be exchanged between systems using the /api/metadata
endpoint, instead, metadata should be exchanged as visualizations.
The /api/configuration/settings
and /api/configuration/settings/filter
endpoints have been removed.
Function names in predictor expressions are now case sensitive and must match the predictor function names in the DHIS 2 User Guide. Previously they were case-insensitive. As part of the upgrade to 2.34, functions names in existing predictor expressions are automatically converted to the correct case.
The stddev
function in predictor expressions is now the same as stddevSamp
for consistency with other parts of DHIS 2 and with general usage. Previously, stddev
was synonymous with stddevPop
in predictor expressions. As part of the upgrade to 2.34, references to stddev in existing predictor expressions are automatically replaced with stddevPop
.
trackedentityprogramowner
over columns (trackedentityinstanceid, programid, organisationunitid)
. Improves lookup related to organisation unit scopes in the context of a program.programinstance
over columns (programid)
. Improves general lookup for programinstances based on program in most cases.trackedentityattributevalue
over columns (trackedentityinstanceid, trackedentityattributeid, lower(value))
. This is in addition to the previous index over the columns (trackedentityattributeid, lower(value))
. We saw situations related to value lookup in the context of tracked entity instances where postgres would revert to a sequential scan, when using the existing index would yield a much better result. With the new index we are successfully encouraging postres to use the index also when we are matching on tracked entity instances.programstageinstance
over the columns (status, executiondate)
. This table often grows a lot bigger than tracked entity instance and program instance tables, and we saw a bottleneck in some of our queries when including program stage instances as filters in searches. We added this index to improve the performance of the most common column we filter by, status, as well as executiondate, which is often used together with status when searching for events.Caution
Due to the number of indexes, and the typical size of their tables, be aware that upgrading to this version or above might take a significant amount of time.