Session nutzt TEMP - ORA-01652. Wie die SQL finden

Hallo,

wir haben bei einer Instanz immer wieder einen ORA-01652 Fehler.
TEMP wird im Normalfall allerdings kaum genutzt, Sortierungen finden im Speicher statt.

Ich könnte mich jetzt hinsetzen und stundenlang immer wieder schauen ob eine Session den TEMP TBS nutzt und diese dann schnell tracen - ein eher unsinniges Verfahren.

Was habe ich für Möglichkeiten ?
es sind ca. 170 Sessions dauerhaft auf der Datenbank

Ich habe schon über einen Trigger nachgedacht der den ORA-Fehler abfängt, und dann vielleicht das Tracing einschaltet, aber dann hätte ich maximal das letzte Statement der session. Also auch nicht wirklich gut…

Grüße

Chris

Hi!

wir haben bei einer Instanz immer wieder einen ORA-01652

Ähem, aber den Fehler bekommt doch normalerweise die Session bzw. Transaktion - das muß doch feststellbar sein …

TEMP wird im Normalfall allerdings kaum genutzt, Sortierungen
finden im Speicher statt.

?? - Ähem, wie bitte?

Was habe ich für Möglichkeiten ?

Ich schleudere mal das Stichwort „AUDIT“ in den Raum - genaueres weiß ich nicht (mehr), da ich es bisher noch nie benötigte; es stellt sich die Frage, ob man hier auch Tablespaces überwachen kann.

Grüße,
Tomh

Hi,

Ähem, aber den Fehler bekommt doch normalerweise die Session
bzw. Transaktion - das muß doch feststellbar sein …

Irgendwie ist bei uns nicht angekommen falls jemand aus der Applikation raus einen Fehler bekommen hat - keine Ahnung warum sich keiner gemeldet hat.

TEMP wird im Normalfall allerdings kaum genutzt, Sortierungen
finden im Speicher statt.

?? - Ähem, wie bitte?

Naja, wenn ich nicht irgendwas total falsch verstanden habe, dann definiert man mit pga_agregate_target einen Speicherbereich der für Sortierungen genutzt wird und nur größere Sortierungen laufen dann auf Disk - im TEMP. Ist das nicht richtig ?

Die meißte Zeit ist Temp halt leer…

Ich schleudere mal das Stichwort „AUDIT“ in den Raum -

Ich schaue mal nach ob das für mich paßt.

letzlich habe ich es schon gefunden was den TEMP platzen läßt - wenn auch durch Zufall weil ich gerade an der Instanz angemeldet war…

Aber ich schaue natürlich weiter wie ich das evtl. automatisiert rausfinden kann.
Etwas habe ich schon gefunden, die Funktion ORA_SPACE_ERROR_INFO…

Naja, schaun mer mal :wink:

Grüße

Chris