On 24 June 2016 at 10:28, Michael Paquier <michael.paqu...@gmail.com> wrote:

> On Fri, Jun 24, 2016 at 11:21 AM, Craig Ringer <cr...@2ndquadrant.com>
> wrote:
> >   * Launch a VS x86 command prompt
> >   * devenv /debugexe bin\initdb.exe -D test
> >   * Set a breakpoint in initdb.c:3557 and initdb.c:3307
> >   * Run
> >   * When it traps at get_restricted_token(), manually move the execution
> > pointer over the setup of the restricted execution token by dragging &
> > dropping the yellow instruction pointer arrow. Yes, really. Or, y'know,
> > comment it out and rebuild, but I was working with a supplied binary.
> >   * Continue until next breakpoint
> >   * Launch process explorer and find the pid of the postgres child
> process
> >   * Debug->attach to process, attach to the child postgres. This doesn't
> > detach the parent, VS does multiprocess debugging.
> >   * Continue execution
> >   * vs will trap on the child when it crashes
>
> Do you think a crash dump could have been created by creating
> crashdumps/ in PGDATA as part of initdb before this query is run?
>

I see what you did there ;)

Yes, quite possibly, actually. I should've just got Haroon to build me a
new initdb without the priv setting and with creation of crashdumps/ .

It might be worth testing that out and adding an initdb startup flag to
create the directory, since initdb is such a PITA to debug.

-- 
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Reply via email to