Problem: Trotz aller Datenbank üblichen Default Einstellungen auf einer EE Edition DB funktioniert in der User Session Parallel nicht automatisch.
Lösung:
In folgender Reihenfolge prüfen ob nicht andere DB Features die eigene User Session einschränken:
In meine konkrekten Problem Falls was es am Ende tatsächlich die Ressource Manager Gruppen Zuordnung.
Vor 12 muss über DBMS_RESOURCE_MANAGER.CALIBRATE_IO ein Wert in der DB hinterlegt sein, sonst funktioniert es gar nicht.
SELECT * FROM sys.RESOURCE_IO_CALIBRATE$
siehe Skript für 11g ⇒ https://github.com/gpipperr/OraPowerShell/blob/master/Ora_SQLPlus_SQLcL_sql_scripts/calibrate_io.sql
Ab 12 sind Default Werte hinterlegt:
SELECT OPERATION_NAME, DEFAULT_VALUE FROM V$OPTIMIZER_PROCESSING_RATE WHERE OPERATION_NAME IN ('IO_BYTES_PER_SEC','CPU_BYTES_PER_SEC', 'CPU_ROWS_PER_SEC');
siehe Dazu „Do You Need IO Calibrate Statistics for AUTO DOP in 12C ? (Doc ID 1963310.1)“ und „How To Use Optimizer Processing Rate Statistics (Doc ID 2253387.1)“
Ab 12c sollte DBMS_RESOURCE_MANAGER.CALIBRATE_IO nicht mehr ausgeführt werden.
Prüfen welche aktuellen Einstellungen bzgl. Parallel in meiner Session aktiv sind:
SELECT name, VALUE FROM v$ses_optimizer_env WHERE name IN ('parallel_degree_limit','parallel_max_degree') AND sid=(SELECT sid FROM v$mystat WHERE rownum=1); parallel_degree_limit 65535 parallel_max_degree 1
Seht der Session Parameter „parallel_max_degree“ auf „1“ wird der Optimzier keine Parallen Plan automatisch wählen!
Parallel allgemein:
Support Portal: