Problem Oracle sessions

Honza Pazdziora adelton na informatics.muni.cz
Úterý Listopad 12 11:07:59 CET 2002


On Tue, Nov 12, 2002 at 10:34:43AM +0100, Richard Hrdlicka wrote:
> 
> byl jsem na vas odkazan M.Sormem... Omluvte moji neodbornost pri

Jsem myslel, ze Milan tohle vi ... :-)

> pouzivame RH (2.4.18-10) - s Apache2, OpenSSL. Apache si na Oraclu "rozjede" dvojnasobny
> pocet vlastnich sessions nez je pocet procesu...

Tohle povazujete za vlastnost nebo to potrebujete taky resit?

> Problem je v tom, ze pokud se udela nejaky zasah do package, tak
> vsechny funkce si zapisi stav, ze package je:

Moment, funkce si nezapisi zadny stav. Pri nasledujicim pouziti
package, ktery uz byl v te session pouzit a je tudiz inicializovan,
Vam Oracle rekne

> Error: ORA-04061: existuj?c? stav package "UIS.PKG_STUDIUM" byl ozna?en za neplatn?                                                                                
> ORA-04065: neprovedeno, package "UIS.PKG_STUDIUM" zm?n?no nebo zru?eno (DBD ERROR: OCIStmtExecute)

coz znamena, ze jakykoli stav, ktery v tom packagi byl (a ktery
pretrvava po celou dobu trvani session) bylo nutne zahodit, protoze
se zmenila definice. A zmeni-li se definice, neni mozne, aby prezila
ta data uvnitr. A zaroven se tim vyvole recompile, ktery pokud uspeje,
tak zajisti, ze pri dalsim zavolani uz tuhle chybu nedostanete.

> Samozrejme, ze ten balik je valid a bez chyby, pokud se pouzije v dane
> session "alter package UIS.PKG_STUDIUM compile", tak to vesele
> zkompiluje a chyby nehlasi....
> 
> Ale jak to udelat pro tech cca 80 dalsich session aby si ten package
> zkompilovali???
> 
> Zrejme se jedna o nejake trivialni inicializacni nastaveni, lec
> bohuzel jsem na nej neprisel..

No, pravdepodobne byste mohl napsat nejaky handler do Apache, ktery by
reagoval na vhodny signal, a po obdrzeni toho signalu by do prislusne
session poslal vyse uvedene recompile.

Je ale treba si uvedomit, ze tim ztracite data treba v polovine
provadeni akce. A pokud se deje tohle a jestli to navic chcete, tak
je otazka, jestli to nemate nejak blbe postavene od zacatku. Prece
nemuze byt normalni, ze Vam nevadi, ze prijdete o data, ne? To je jako
byste chtel, aby kurzor prezil DDL na tabulce, nad kterou ten kurzor
je, tedy aby nehodil chybu, ale pritom aby zahodil vsechna neprectena
data, ktera jste jeste nestihl fetchnout.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
      ... all of these signs saying sorry but we're closed ...
------------------------------------------------------------------------


Další informace o konferenci Test