From: | noordsij <noordsij(at)cs(dot)helsinki(dot)fi> |
---|---|
To: | Stefan Kaltenbrunner <stefan(at)kaltenbrunner(dot)cc> |
Cc: | Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: BUG #6086: Segmentation fault |
Date: | 2011-07-26 13:54:45 |
Message-ID: | f82ce27210f51a2faf8879d4f14e5cab@cs.helsinki.fi |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
After a few hours of watching strange things happening I finally stumbled
on the cause.
Very short summary: the postgres binary needs to be linked to libpthread,
as this will ensure a special fork() inside libthr (the FreeBSD libpthread
implementation/wrapper) is used which correctly deals with any pthread
usage (I am guessing especially statically initialized pthread_X variables
in for example libxml2).
This can be accomplished by adding "-lpthread" to the LDFLAGS when building
either libxml2 or postgresql itself, or by preloading libpthread.so when
starting postgresql.
Before advocating any particular solution, I'd like to throw this out first
and see how strongly people feel about this.
Cheers, and thanks to everyone who replied so far
Dennis
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Johnson | 2011-07-26 17:56:55 | Re: BUG #6127: pg_restore failing: unexpected message type 0x58 during COPY from stdin |
Previous Message | Kevin Grittner | 2011-07-26 13:44:18 | Re: BUG #6130: TOAST tables bug restoring to PostgreSQL 9.0.4 |