![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
On a Sun ultra2 sparc64 initdb hangs here: |
#3
| |||
| |||
|
#4
| |||
| |||
|
|
David Walker <david (AT) cosmicfires (DOT) com> writes: On a Sun ultra2 sparc64 initdb hangs here: Where's "here"? Build with --enable-debug, then attach to the stuck process with gdb and get a stack trace. |
#5
| |||
| |||
|
|
The reason for the hang is that the sending end of the pipe from initdb to postgres is not being closed by popen(), so postgres never sees EOF on it. In this context I am suspicious of the fact that while libpq is being built with threading, the apps which link against it do not appear to be. |
#6
| |||
| |||
|
|
Andrew - Supernews <andrew+nonews (AT) supernews (DOT) com> writes: The reason for the hang is that the sending end of the pipe from initdb to postgres is not being closed by popen(), so postgres never sees EOF on it. In this context I am suspicious of the fact that while libpq is being built with threading, the apps which link against it do not appear to be. initdb does not use libpq ... it might link to it, because of sloppy LIBS list management, but it doesn't ever call it. There is, by definition, no running postmaster available for libpq to contact. |
#7
| |||
| |||
|
|
On 2005-05-21, Tom Lane <tgl (AT) sss (DOT) pgh.pa.us> wrote: initdb does not use libpq ... it might link to it, Linking to it is enough to bring in libc_r, and pick up libc_r's versions of at least some system calls. The ktrace results show this. |
#8
| |||
| |||
|
|
Andrew - Supernews <andrew+nonews (AT) supernews (DOT) com> writes: On 2005-05-21, Tom Lane <tgl (AT) sss (DOT) pgh.pa.us> wrote: initdb does not use libpq ... it might link to it, Linking to it is enough to bring in libc_r, and pick up libc_r's versions of at least some system calls. The ktrace results show this. [ shrug... ] If libc_r behaves differently than libc in an app that doesn't create multiple threads, I think that's an issue to be taking up with the libc developers not us. |
![]() |
| Thread Tools | |
| Display Modes | |
| |