Re: [cx-oracle-users] cursor.execute() stays blocked on a weird statement without propagating ORA-0
Brought to you by:
atuining
From: ConcreteVitamin <con...@gm...> - 2021-05-03 17:35:09
|
Hi Anthony - thanks for the reply. I've filed https://github.com/oracle/python-cx_Oracle/issues/559, with more detailed info included (e.g., setting DPI_DEBUG_LEVEL to 15). On Mon, May 3, 2021 at 9:53 AM Anthony Tuininga <ant...@gm...> wrote: > Hi, > > First, this e-mail list is no longer used very much. I would suggest > adding an issue here: https://github.com/oracle/python-cx_Oracle/issues. > You're more likely to get help there. > > Second, you need to set DPI_DEBUG_LEVEL to the value 4, not 64. 64 is used > for logging messages while the library is being loaded and 4 is used for > logging ODPI-C calls -- which is what you want in this case. That said, you > should *still* see messages -- even if only the one saying that debugging > messages have been initialized. So double check that the environment > variable is in fact being set! > > Finally, I have no idea why SQL*Plus would "work" and cx_Oracle "would not > work" since they use the same libraries. It might be helpful to show the > cx_Oracle code you are using. > > Anthony > > On Sat, May 1, 2021 at 11:46 PM ConcreteVitamin <con...@gm...> > wrote: > >> Hi there, >> >> I've a weird statement that's pretty expensive. Entering this SQL >> statement in sqlplus eventually leads to this error: >> >> ERROR at line 1: >> ORA-01652: unable to extend temp segment by 128 in tablespace TEMP >> >> This is expected & good. >> >> However, using cx_Oracle, specifically using >> >> cursor.execute(same_statement) >> >> would result in the same amount of work being done, and at some point the >> CPU utilization on the server stopped -- which meant ORA-01652 has happened >> -- but the cursor.execute(...) call stays blocked without raising an >> exception. This makes the app stay in a stuck state. At that point it >> doesn't respond to Ctrl-C SIGINT. >> >> I've tried export DPI_DEBUG_LEVEL=64 and there are no messages being >> printed. >> >> What's wrong? Is it possible to enable an exception to be raised? >> >> Server: 19c [where sqlplus was run] >> cx_Oracle: 8.1 [different host from the server; using same DSN as sqlplus] >> >> Thanks. >> _______________________________________________ >> cx-oracle-users mailing list >> cx-...@li... >> https://lists.sourceforge.net/lists/listinfo/cx-oracle-users >> > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > |