[Zope] database connection problem (halting Zope)

Hrasky Petr Petr.Hrasky@bnp-dresdner-bank.cz
Wed, 4 Oct 2000 13:37:27 +0200


thanks again,
yes, the python versions I use are compiled for threads, they link
against libpthread under linux. I have also found ZmxODBCDA adapter and
it does not work for me yet - it shows in Zope as broken product.
	I also spoke to local Oracle hotline and they said that ODBC access is
not thread safe until 8.1.6.1.1 due to some error in OCI libs. Now I am
downloading Oracle for Linux and Sybase for Linux and I will try to
compile OracleDA and SybaseDA.

Thanks a lot all.


Regards,

	Petr

-----Original Message-----
From: Dieter Maurer [mailto:dieter@handshake.de]
Sent: Tuesday, October 03, 2000 11:17 PM
To: Hrasky Petr
Cc: 'zope@zope.org'
Subject: RE: [Zope] database connection problem (halting Zope)


Hrasky Petr writes:
 > thank you for answers. To clarify: 
 > I run Zope-2.2.2/Linux2.2.14/MySQL-ZMySQLDA1.1.3nonbin at home and
 > Zope-2.2.2-binary/NT4.0Workstation/ZODBCDA3.1.0b2 (Oracle 8i ODBC,
 > Sybase11.5)at work. Oracle connection at work and MySQL (at home just
 > for testing) run looong queries and halt Zope. I have no such queries
 > for Sybase yet. 
 > 	I will try to recompile python for linux, but I can't do so for
WinNT
 > as I have no compiler. Anyway I thought the python distributed with
 > binary release of Zope is threaded, no?
If Python is compiled without threads, there is no module
"thread". Zope relies on this module. It dies immediately,
if it is not there. Thus, you can be sure, your
Python has thread support compiled in.

 > So, does anybody know of either binary and threaded Zope driver for
 > Oracle , Sybase etc. or the same ODBC driver? And what is the state
of
 > python threading on WinNT paltform?
The Python that comes with Zope has thread support compiled in.

Maybe, your Python-ODBC connection "forgets" to release
Python's interpreter lock.

We, once, had such a problem.
   Accidentally, the DCOracle module had been set up with a standard
   Python distribution (with threading disabled) rather
   than the Zope Python. As a consequence, the
   DCOracle did not call "releaseLock" and
   "acquireLock" (as they would not be present
   in a non-threaded Python).
   And, of course, database operations blocked Zope.


Dieter

_______________________________________________
Zope maillist  -  Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )