Re: Seg fault on PQconnectdb

From: Joe La Frite <joelafrite84(at)gmail(dot)com>
To: Merlin Moncure <mmoncure(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Seg fault on PQconnectdb
Date: 2010-10-13 14:29:49
Message-ID: AANLkTi=-fhZ4-c1CGa182wf51ae5dQ0UhL81VzuYUZjR@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Oct 13, 2010 at 16:06, Merlin Moncure <mmoncure(at)gmail(dot)com> wrote:
>
> On Wed, Oct 13, 2010 at 5:24 AM, Joe La Frite <joelafrite84(at)gmail(dot)com> wrote:
> > Hi everyone,
> > I'm trying to use libpq in my application, but it crashes with a seg fault
> > when trying to connect. The call stack is as follows : malloc_consolidate <
> > _int_malloc < malloc < makeEmptyPGconn < PQconnectStart < PQconnectdb < my
> > own application.
> > I have no clue as to what causes this. Sample programs that only do a call
> > to PQconnectdb work fine. My application uses a complex build script so I
> > suspect it may be a compiling or linking problem, but there are no errors
> > reported, and ldd points to the correct version of libpq.so.
> > I've tried googling but could not find anything useful. I would really
> > appreciate some help. Thanks in advance!
> > (English is not my first language so I apologize if there are mistakes or
> > I'm not being very clear.)
> > Joe L.F.
>
> hm, crashing in malloc.  is your application multi threaded?
>
> merlin

No, single thread only.

Tough after some testing, I'm fairly sure the problem isn't caused by
libpq at all. I think the heap gets corrupted at some point before the
call to PQconnectdb is made, as replacing the call by a simple void*
test = malloc(10) causes it to crash as well.

Thanks for replying anyway. :)

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Igor Neyman 2010-10-13 14:31:03 Re: are there any method that "Update" command not affect other unrelated indices?
Previous Message Ray Stell 2010-10-13 14:28:42 Re: about RPM build options