[egenix-users] mxODBC Zope DA connecting to Oracle seg faults

M.-A. Lemburg mal at egenix.com
Wed Mar 9 00:09:22 CET 2011


the error message suggests that the ODBC driver is creating a
strange situation:

 1. it does not return an error from the ODBC connect call

 2. it then fails on subsequent ODBC calls on the connection
    and probably causes the seg fault when trying to fetch
    error messages or doing more ODBC calls on the connection

While this is definitely a problem with the Oracle ODBC driver,
the original cause of the problem appears to be a connection
or driver load error.

This would also explain why only a few of your machines are
experiencing the problem.

You should be able to track this down by enabling the ODBC
trace function in unixODBC and/or strace.

Here's a similar problem reported by another user a few years


Something else that may be important:

The mxODBC Zope DA 2.0 uses mxODBC 3.1 internally. This is compiled
against unixODBC 2.3.0 which uses a different ABI on 64-bit platforms
than unixODBC 2.2.11.

Marc-Andre Lemburg

Professional Python Services directly from the Source  (#1, Mar 08 2011)
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/

::: Try our new mxODBC.Connect Python Database Interface for free ! ::::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611

Mathias Gibbens wrote:
> Hello,
>   We're experiencing problems running Zope 2.11.6 with the mxODBC Zope
> DA 2.0.1 when we try to connect to our Oracle 10gR2 database.
> Immediately upon trying to connect, Zope seg faults and produces a core
> dump. However, this didn't used to happen, but has begun to affect two
> of our developers and one of our development servers. Other developers
> and servers are unaffected.
>   I have tried to use gdb to get a useful backtrace, but it has not
> produced anything useful, since there aren't debugging symbols.
>   We are able to connect to a MySQL database without any problems.
>   Our production and development servers are configured identically and
> run RHEL5, while our developers use a couple versions of Linux.
>   We would appreciate any pointers on resolving this problem. If any
> additional information is needed, please let me know.
> Thanks,
> Mathias
> ----------
> Base information:
> [~]$ rpm -qa python oracle-instantclient-basic unixODBC
> unixODBC-2.2.11-7.1
> python-2.4.3-43.el5
> oracle-instantclient-basic-
> [~]$ cat /etc/redhat-release 
> Red Hat Enterprise Linux Server release 5.6 (Tikanga)
> Zope log:
> 2011-03-08 16:18:48 INFO root eGenix mxODBC Zope DA: Problem
> establishing pooled DatabaseConnection 0 for
> <Products.mxODBCZopeDA.ZopeDA.ZopeConnection "DSN=XXXXXX" thread
> -1235223664, 0 connections, oid '\x00\x00\x00\x00\x00\x10\xeb\xc2' at
> 0xb07396c>: ('08003', 0, '[unixODBC][Driver Manager]Connnection does not
> exist', 10039)
> Segmentation fault (core dumped)
> _______________________________________________________________________
> eGenix.com User Mailing List                     http://www.egenix.com/
> https://www.egenix.com/mailman/listinfo/egenix-users

More information about the egenix-users mailing list