ArcGIS Enterprise
De invloed van de installatie van specifieke Oracle Critical Patches op de werking van ArcGIS Desktop en ArcGIS Server
Na de installatie van bepaalde Oracle Critical patches voor Oracle 11g of 12c kunnen problemen optreden bij het maken van database connecties vanuit ArcGIS Desktop en ArcGIS Server. Door de verhoogde Oracle securityinstellingen kunnen ArcGIS Desktop, ArcGIS Pro en ArcGIS Server de parameter ‘OPEN_CURSORS’ niet meer uitlezen uit de v$parameter view in Oracle.
Bij het gebruik van ArcGIS Desktop 10.2.2 of eerdere versies, leidt dit tot foutmeldingen bij het maken van een database connectie of de applicatie hangt of crasht. In ArcGIS Server 10.2.2 of eerder, kunnen geen database connecties meer als datastore geregistreerd worden of werken bestaande map- of feature services niet meer omdat bestaande datastores niet meer benaderd kunnen worden.
Er zijn verschillende mogelijkheden om dit probleem te verhelpen in versie 10.2.2 of eerder:
- Zowel voor ArcGIS Desktop én ArcGIS Server 10.2.2 en eerder zijn er patches beschikbaar: http://support.esri.com/download/2143. Deze patches moeten op iedere ArcGIS Desktop installatie en ArcGIS Server installatie uitgerold worden.
- Het probleem kan alternatief opgelost worden door het toekennen van bepaalde privileges op Oracle niveau, mocht de installatie van de patches (op korte termijn) geen optie zijn:
GRANT SELECT ON v_$parameter TO PUBLIC; of:
GRANT SELECT ON v_$parameter TO <USER>;
of
GRANT SELECT SELECT_CATALOG_ROLE TO PUBLIC; of:
GRANT SELECT SELECT_CATALOG_ROLE TO <USER>;
Vanaf ArcGIS versie 10.3 crasht of hangt de applicatie niet meer, maar hij kan nog steeds niet de OPEN_CURSORS parameter uitlezen uit v$parameter. Als ArcGIS de parameter niet kan uitlezen, wordt de standaardwaarde van 300 aangenomen, de default waarde van Oracle. Deze waarde is echter te laag voor de meeste ArcGIS omgevingen. Esri adviseert om deze waarde op 2000 te zetten. Omdat ArcGIS de OPEN_CURSOR parameter niet meer kan uitlezen bestaat de optie om de parameter OPEN_CURSORS als Geodatabase parameter op te nemen in de tabel sde.server_config. ArcGIS Desktop en ArcGIS Server gebruiken dan deze waarde, mocht het niet lukken om de parameter direct uit te lezen uit v$parameter. Op https://support.esri.com/technical-article/000012243 staat uitleg over het toevoegen van deze parameter aan de sde.server_config tabel.
In Enterprise Geodatabases versie 10.5 of hoger is de OPEN_CURSORS parameter standaard aanwezig in de tabel sde.server_config, met een standaardwaarde van 300. Het is mogelijk om de ‘sde.gdb_util.update_open_cursors’ stored procedure te gebruiken om de parameter in deze tabel te actualiseren met de daadwerkelijke waarde uit v$parameter. Informatie hierover is te vinden op http://desktop.arcgis.com/en/arcmap/latest/manage-data/gdbs-in-oracle/update-open-cursors.htm of https://pro.arcgis.com/en/pro-app/help/data/geodatabases/manage-oracle/update-open-cursors.htm