Thread: BUG #3272: ECPG YE000 error

BUG #3272: ECPG YE000 error

From
"Taso Hatzi"
Date:
The following bug has been logged online:

Bug reference:      3272
Logged by:          Taso Hatzi
Email address:      taso@aanet.com.au
PostgreSQL version: 8.2.4
Operating system:   Red Hat Enterprise Linux ES release 4 (Nahant Update 5)
Description:        ECPG YE000 error
Details:

The host is a Dell 2950 Dual Intel Xeon with 2GB RAM

Built 8.2.4 from postgresql-8.2.4-1PGDG.src.rpm
Removed all traces of 7.4.16-1.RHEL4

Everything appeared to go OK.

The application is multi-threaded. It bombs with a YE000 error when
subjected to any sort of work load.

Compiled the application on a Fedora Core release 6 (Zod) box running
8.1.8-1.fc6 and pointed it to the 8.2.4 server and it looks Ok.

I'm not sure what debug info to collect.
It looks to me like a thread isolation problem.
Any pointers on how top proceed gladly received.

Re: BUG #3272: ECPG YE000 error

From
Heikki Linnakangas
Date:
Taso Hatzi wrote:
> It looks to me like a thread isolation problem.

I don't know anything about the RPM packages, but did you use the
--enable-thread-safety option wuth configure?

--
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com

Re: BUG #3272: ECPG YE000 error

From
Taso Hatzi
Date:
Heikki Linnakangas wrote:
>
> I don't know anything about the RPM packages, but did you use the
> --enable-thread-safety option wuth configure?
>

The RPM package enables that option.


$ pg_config
CONFIGURE = '--build=i686-redhat-linux-gnu' '--host=i686-redhat-linux-gnu' '--target=i686-redhat-linux-gnu'
'--program-prefix=''--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin'  
'--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib'
'--libexecdir=/usr/libexec''--localstatedir=/var' '--sharedstatedir=/usr/com'  
'--mandir=/usr/share/man' '--infodir=/usr/share/info' '--disable-rpath' '--with-perl' '--with-python' '--with-tcl'
'--with-tclconfig=/usr/lib''--with-openssl' '--with-pam' '--with-krb5'  
'--with-includes=/usr/include' '--with-libraries=/usr/lib' '--enable-nls' '--enable-thread-safety'
'--sysconfdir=/etc/sysconfig/pgsql''--datadir=/usr/share/pgsql' '--with-docdir=/usr/share/doc'  
'CFLAGS=-O2 -g -pipe -m32 -march=i686 -mtune=pentium4 -I/usr/include/et' 'CPPFLAGS= -I/usr/include/et'
'build_alias=i686-redhat-linux-gnu''host_alias=i686-redhat-linux-gnu'  
'target_alias=i686-redhat-linux-gnu'

Re: BUG #3272: ECPG YE000 error

From
Tom Lane
Date:
"Taso Hatzi" <taso@aanet.com.au> writes:
> It looks to me like a thread isolation problem.

If you have multiple threads accessing the same connection, it's
up to *you* to provide interlocking to make sure they don't try
to issue concurrent queries; libpq has no internal mutex for that.
I believe similar statements hold for ECPG's state.

            regards, tom lane