Přeskočit obsah
For the complete DHIS2 documentation index, see llms.txt.

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 tabulek category, dataelementgroupset a organisationunitgroupset.
  • Do tabulek dataelementgroupset a organisationunitgroupset byl přidán sloupec description.
  • Nový index v tabulce trackedentityprogramowner př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 programinstance př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 trackedentityattributevalue př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 programstageinstance nad 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 sharing is added to all metadata tables which is used to store sharing data. All of current *useraccesses and *usergroupaccesses tables are deprecated. There is a Flyway script executed at start up which migrates all sharing data from deprecated tables to the new sharing column. In order to update sharing data with a SQL query you can use PostgreSQL JSON Functions. The JSON format of the new sharing column 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/stdDevOutlier a POST /api/dataAnalysis/minMaxOutlier jsou zastaralé a budou odstraněny ve verzi 2.37. Tyto koncové body jsou nahrazeny rozhraním /api/outlierDetection API, které nabízí vyšší výkon a sofistikovanější detekci odlehlých hodnot.
  • Koncový bod API POST /api/dataAnalysis/followup pro čtení hodnot následných dat je zastaralý a bude odstraněn ve verzi 2.38. Tento koncový bod je nahrazen koncovým bodem API GET /api/dataAnalysis/followup.
  • Pole type v koncovém bodu /api/analytcs API metadata > odpověď headers je zastaralé a bude odstraněno ve verzi 2.37. Místo toho použijte pole valueType.
  • 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 restrictToCaptureScope parameter in the API endpoints api/categoryOptions and api/programs is 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 sharing se 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 s userAccesses a userGroupAccesses, 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í.