On Tue, Jul 24, 2012 at 3:16 AM, Craig Ringer <ring...@ringerc.id.au> wrote:

> It shouldn't matter - only PostgreSQL was restarted, not the whole machine
>> - and cleanly at that. Very strange.
>
>
>  look at pg_ctlcluster, (which does the restart):

        if (!fork()) {
            close STDOUT;
            exec $pg_ctl, '-D', $info{'pgdata'}, '-s', '-w', '-m', 'fast',
@pg_ctl_opts_from_cli, 'stop';
        } else {
            wait;
            $result = $? >> 8;
        }

        # try harder if "fast" mode does not work
        if (-f $info{'pgdata'}.'/postmaster.pid') {
            print "(does not shutdown gracefully, now stopping
immediately)\n";
            $result = system $pg_ctl, '-D', $info{'pgdata'}, '-s', '-w',
'-m', 'immediate', @pg_ctl_opts_from_cli, 'stop';
        }

        # if that still not helps, use the big hammer
        if (-f $info{'pgdata'}.'/postmaster.pid') {
            print "(does not shutdown, killing the process)";
            $pid = get_running_pid $info{'pgdata'}.'/postmaster.pid';
            kill (9, $pid) if $pid;
            unlink $info{'pgdata'}.'/postmaster.pid';
            $result = 0;
        }

Could the "big hammer mode" be what's killed the database?

Greetings
Marcin

Reply via email to