2.36 Upgrade Notes¶
Please ensure you have read the upgrade notes from the PREVIOUS RELEASE, if upgrading from an earlier version
Databáze¶
- Sloupec
shortName(povinná vlastnost) byl přidán do tabulekcategory,dataelementgroupsetaorganisationunitgroupset. - Do tabulek
dataelementgroupsetaorganisationunitgroupsetbyl přidán sloupecdescription. - Nový index v tabulce
trackedentityprogramownerpřes sloupce(trackedentityinstanceid, programid, organizationunitid). Zlepšuje vyhledávání související s obory organizačních jednotek v kontextu programu. - Nový index v tabulce
programinstancepřes sloupce(programid). Zlepšuje obecné vyhledávání instancí programu ve většině případů na základě programu. - Nový index v tabulce
trackedentityattributevaluepřes sloupce(trackedentityinstanceid, trackedentityattributeid, lower(value)). Toto je doplněk k předchozímu indexu nad sloupci(trackedentityattributeid, lower(value)). Viděli jsme situace související s vyhledáváním hodnot v kontextu instancí sledovaných entit, kdy by se postgres vrátil k sekvenčnímu skenování, když by použití stávajícího indexu přineslo mnohem lepší výsledek. S novým indexem úspěšně podporujeme postres, aby používali index také při párování na instancích sledovaných entit. - Nový index v tabulce
programstageinstancenad sloupci(stav, datum provedení). Tato tabulka je často mnohem větší než tabulky instancí sledovaných entit a instancí programu a při zahrnutí instancí fáze programu jako filtrů do vyhledávání jsme u některých našich dotazů viděli překážku. Tento index jsme přidali, abychom zlepšili výkon nejběžnějšího sloupce, podle kterého filtrujeme, stav a také datum provedení, které se často používá spolu se stavem při vyhledávání událostí. - Poznámka: Vzhledem k počtu nových indexů přidaných do potenciálně velkých tabulek může proces upgradu trvat značné množství času.
- Sharing: a new JSONB column
sharingis added to all metadata tables which is used to store sharing data. All of current*useraccessesand*usergroupaccessestables are deprecated. There is a Flyway script executed at start up which migrates all sharing data from deprecated tables to the newsharingcolumn. In order to update sharing data with a SQL query you can use PostgreSQL JSON Functions. The JSON format of the newsharingcolumn looks like the below.
{
"owner": "GOLswS44mh8",
"external": false,
"users":{},
"userGroups":
{
"Rg8wusV7QYi":
{
"access": "r-r-----",
"id": "Rg8wusV7QYi"
}
},
"public": "rw------"
}
API¶
- Koncové body API
POST /api/dataAnalysis/stdDevOutlieraPOST /api/dataAnalysis/minMaxOutlierjsou zastaralé a budou odstraněny ve verzi 2.37. Tyto koncové body jsou nahrazeny rozhraním/api/outlierDetectionAPI, které nabízí vyšší výkon a sofistikovanější detekci odlehlých hodnot. - Koncový bod API
POST /api/dataAnalysis/followuppro čtení hodnot následných dat je zastaralý a bude odstraněn ve verzi 2.38. Tento koncový bod je nahrazen koncovým bodem APIGET /api/dataAnalysis/followup. - Pole
typev koncovém bodu/api/analytcsAPImetadata> odpověďheadersje zastaralé a bude odstraněno ve verzi 2.37. Místo toho použijte polevalueType. - Některé atributy vizualizace jsou pouze pro čtení jako součást procesu ukončení podpory souvisejícího se změnami ve Visualization API (
/api/visualizations). „Nový formát“ a příslušné změněné atributy naleznete na DHIS2-10054. Nový formát je popsán v sekci Vizualizace dokumentace DHIS2. Aby se předešlo poškození existujících aplikací, starý formát bude stále vrácen jako součást odpovědi. Změny refaktorovaných atributů se projeví pouze při použití nového formátu. Viz DHIS2-1369. - The
restrictToCaptureScopeparameter in the API endpointsapi/categoryOptionsandapi/programsis no longer supported. For programs alone, an alternate endpoint/api/programs/orgUnits?programs={programUids}for fetching organisationUnit associations can be used. - Sdílení: zavedení nového sloupce
sharingse týká pouze backendových služeb a databáze, protože se snažíme, aby byla tato změna zpětně kompatibilní. Znamená to, že všechna rozhraní API a aplikace by měly fungovat normálně jako dříve. Všechny koncové body API související se sdílením stále přijímají starý formát suserAccessesauserGroupAccesses, v backendu je převádíme do nového formátu a ukládáme do databáze. Všechny koncové body API vrátí nový i starý formát sdílení. Další podrobnosti naleznete v části Sdílení.