Re: Debugging initdb breakage

Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>

From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
To: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2010-10-10T21:24:17Z
Lists: pgsql-hackers
On 10.10.2010 23:38, Dimitri Fontaine wrote:
> So I'm beginning to work on the extension support for dump and restore,
> and that begins with a new pg_extension catalog. I managed to break
> initdb already, of course, but I'm fighting my way out — no luck with
> gdb, it won't catch the Assert failure and show me a backtrace. I tried
> "set follow-fork-mode child" in gdb, in different systems, to no avail.
>
> Please find attached the detailed initdb.log and the very few items I
> needed to obtain:
>
> TRAP: FailedAssertion("!(reln->md_fd[forkNum] == ((void *)0))", File: "md.c", Line: 254)
> child process was terminated by signal 6: Abort trap
>
> How to have gdb help me? What's my error, that I guess is obvious? Where
> do I read more now in order not to need too much assistance after that?

At least on my system, assertion failure creates a core dump that you 
can load in gdb. Make sure you use "ulimit -c unlimited" or similar.

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