""Alex bahdushka"" <bahdushka@gmail.com> wrote
>
> After doing some more digging, it looks like that server was missing
> the appropriate Kpostgresql symlink in /etc/rc0.d/. So upon shutdown
> (shutdown -h now)... my guess is it got a sigterm (you know where it
> says Sending all processes a TERM signal or whatever), then it (init)
> waited 5 seconds or whatever the timeout is and sent a sigkill.
>
> If postgresql took longer to shutdown than that timeout and so was
> then given a sigkill and then server turned off.... Could that do it?
>
I don't believe in this explaination actually. According the startup
message, the error "heap_update_redo: no block" could most possibly happen
when PostgreSQL tried to read an existing block but found that the file
length is not long enough to have it. How could a SIGKILL truncate a data
file like that?
Regards,
Qingqing