BUG #2059: PGConnect fails when used in a thread

Started by Chris Storahover 20 years ago2 messagesbugs
Jump to latest
#1Chris Storah
chris.storah@orionsmg.com

The following bug has been logged online:

Bug reference: 2059
Logged by: Chris Storah
Email address: chris.storah@orionsmg.com
PostgreSQL version: 8.0.3
Operating system: Linux - Fedora Core 4 x86_64 version
Description: PGConnect fails when used in a thread
Details:

fe-connect.c in the src/interfaces/libpq directory is segfaulting when a
PQconnectdb is called from a thread (works when called from the main
application).

fe-connect.c - parseServiceInfo is failing because no service option is
being used in the connection string so service is NULL. The line that fails
is the 'snprintf(serviceFile, MAXPGPATH, "%s/pg_service.conf", ...) line. If
this is moved into the 'if (service != NULL)' section of code, everything
works fine (as it is never called when no service is specified).

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Chris Storah (#1)
Re: BUG #2059: PGConnect fails when used in a thread

"Chris Storah" <chris.storah@orionsmg.com> writes:

fe-connect.c - parseServiceInfo is failing because no service option is
being used in the connection string so service is NULL. The line that fails
is the 'snprintf(serviceFile, MAXPGPATH, "%s/pg_service.conf", ...) line.

Huh? That statement doesn't use 'service', so your analysis makes no
sense. I agree it's a bit inefficient as coded, but I can't see that it
would crash. You have other problems to look for.

regards, tom lane