[DB-SIG] threads sharing connection with cx_Oracle
Anthony Tuininga
anthony at computronix.com
Sun Jan 25 00:05:57 EST 2004
You do need to ensure that the OCI threading option is turned on.
Specifically, you need to set the following module level flag:
cx_Oracle.OPT_Threading = 1
If you don't, you will find the program very unstable. :-) Otherwise,
things are rock solid in our experience. We have run stress tests on
applications with 30 threads for several hours at a time and not noticed
any problems.
On Sat, 2004-01-24 at 12:05, Randall Smith wrote:
> Are there any known issues with threads sharing a connection with cx_Oracle?
>
> Environment: cx_Oracle for Oracle 8i and Python2.3, Oracle 8.1.5
>
> The top level program creates a connection. It then creates threads and
> passes that connection in to each thread as an argument so that all
> threads are sharing the connection. Each thread creates a cursor as
> needed and issues only SELECT statements. After about 10 threads have
> been created the next thread throws an Oracle Exception with a message
> something like 'End of string line ...'. Sorry about the vagueness on
> the error messgae, I'm at home and don't have access to it now.
>
> I set up the same environment using psycopg/Postgresql and didn't have
> any problem. So I think it is specific to Oracle or cx_Oracle.
>
> I can get the exact error message on Tuesday, but I'm sending this
> message now in hopes that someone is already familiar with this problem.
>
> Randall Smith
>
> _______________________________________________
> DB-SIG maillist - DB-SIG at python.org
> http://mail.python.org/mailman/listinfo/db-sig
--
Anthony Tuininga <anthony at computronix.com>
More information about the DB-SIG
mailing list