[Zope] database connection problem (halting Zope)

Francisco José Esteban Risueño fjesteban@uco.es
Thu, 05 Oct 2000 12:00:49 +0200


In this document:
http://www.zope.org/Members/petrilli/DARoadmap

the behaviour of different database adapters in a multithreaded environment is
discussed. We've observered in our Zope instalation that a long query via ZODBCDA
halts (this is similar in the Czech Republic and in Spain). Howerver, if we issue
the same query via ZOracleDA, the server still responds while the quere is
executing (like a multithreaded server should do)

Hrasky Petr escribió:

> 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 )
>
> _______________________________________________
> 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 )