signal weirdness
От | Peter Galbavy |
---|---|
Тема | signal weirdness |
Дата | |
Msg-id | 19990329110349.A19218@office.knowledge.com обсуждение исходный текст |
Ответы |
Re: [HACKERS] signal weirdness
|
Список | pgsql-hackers |
Hi folks, I am trying to get a version (any version !) of PostgreSQL running on OpenBSD 2.4 upwards, but I am getting some weird behaviour with the SIGQUIT in elog(): from kdump: 21633 postgres RET write 56/0x38 21633 postgres CALL sendto(0x4,0x125640,0x3a,0,0,0) 21633 postgres GIO fd 4 wrote 58 bytes "EERROR: destroydb: database 'regression' does not exist \0" 21633 postgres RET sendto 58/0x3a 21633 postgres CALL kill(0x5481,0x3) 21633 postgres RET kill -1 errno 1 Operation not permitted 21633 postgres CALL sigprocmask(0x1,0) 21633 postgres RET sigprocmask 0 21633 postgres CALL sigsuspend(0) For those who cannot read hex, FYI 0x5481 == 21633. What this basically means that the process is getting permission denied sending a signal to itself. Hmm. This is with a snapshot from a few days agao, but the results are identical for 6.4.2 as well. Oh, the result - the regression tests hang waiting for the postgres process to receive the SIGQUIT to abort transaction that never comes. The OpenBSD folks don't seem to be bothered. I have RTFM, APUE and kern_sig.c in OpenBSD - no joy. Any ideas anyone ? Seen this before ? Is it some bizarre interaction of sigprocmask() or whatever ? Regards, -- Peter Galbavy Knowledge Matters Ltd http://www.knowledge.com /http://www.wonderland.org/ http://www.literature.org/
В списке pgsql-hackers по дате отправления: