From mathias-gibbens at bethel.edu Tue Mar 8 16:40:23 2011 From: mathias-gibbens at bethel.edu (Mathias Gibbens) Date: Tue Mar 8 23:40:31 2011 Subject: [egenix-users] mxODBC Zope DA connecting to Oracle seg faults Message-ID: <1299624023.1922.21.camel@linux7927> 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-10.2.0.3-1 [~]$ 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 : ('08003', 0, '[unixODBC][Driver Manager]Connnection does not exist', 10039) Segmentation fault (core dumped) From mal at egenix.com Wed Mar 9 00:09:22 2011 From: mal at egenix.com (M.-A. Lemburg) Date: Wed Mar 9 00:09:27 2011 Subject: [egenix-users] mxODBC Zope DA connecting to Oracle seg faults In-Reply-To: <1299624023.1922.21.camel@linux7927> References: <1299624023.1922.21.camel@linux7927> Message-ID: <4D76B722.3070702@egenix.com> Hello, 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 ago: http://www.egenix.com/mailman-archives/egenix-users/2006-November/114114.html 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. Regards, -- Marc-Andre Lemburg eGenix.com 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 http://www.egenix.com/company/contact/ 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-10.2.0.3-1 > > [~]$ 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 > -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 From mathias-gibbens at bethel.edu Tue Mar 22 09:59:15 2011 From: mathias-gibbens at bethel.edu (Mathias Gibbens) Date: Tue Mar 22 16:00:21 2011 Subject: [egenix-users] mxODBC Zope DA connecting to Oracle seg faults In-Reply-To: <4D76B722.3070702@egenix.com> References: <1299624023.1922.21.camel@linux7927> <4D76B722.3070702@egenix.com> Message-ID: <1300805955.2012.3.camel@linux7927> Thank you! There was a problem with the unixODBC driver like you described. Enabling the trace function helped to pinpoint the issue. Mathias On Wed, 2011-03-09 at 00:09 +0100, M.-A. Lemburg wrote: > Hello, > > 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 > ago: > > http://www.egenix.com/mailman-archives/egenix-users/2006-November/114114.html > > 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. > > Regards, > -- > Marc-Andre Lemburg > eGenix.com > > 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 > http://www.egenix.com/company/contact/ > > > > 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-10.2.0.3-1 > > > > [~]$ 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 > > > -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