Re: Problem with PostgreSQL 9.2.7 and make check on AIX 7.1
От | Rainer Tammer |
---|---|
Тема | Re: Problem with PostgreSQL 9.2.7 and make check on AIX 7.1 |
Дата | |
Msg-id | 530DA4D3.5090001@spg.schulergroup.com обсуждение исходный текст |
Ответ на | Re: Problem with PostgreSQL 9.2.7 and make check on AIX 7.1 (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-bugs |
Hello, OK, at least the first stage is working... src/backend/storage/lmgr/proc.c ... static bool CheckStatementTimeout(void) { TimestampTz now; if (!statement_timeout_active) return true; /* do nothing if not active */ elog(FATAL, "enter: CheckStatementTimeout - after statement_timeout_active check"); now = GetCurrentTimestamp(); ... gmake check: prepared_xacts.out ... -- pxtest3 should be locked because of the pending DROP set statement_timeout to 2000; SELECT * FROM pxtest3; FATAL: enter: CheckStatementTimeout - after statement_timeout_active check LINE 1: SELECT * FROM pxtest3; ^ FATAL: enter: CheckStatementTimeout - after statement_timeout_active check FATAL: enter: CheckStatementTimeout - after statement_timeout_active check LINE 1: SELECT * FROM pxtest3; ^ FATAL: enter: CheckStatementTimeout - after statement_timeout_active check connection to server was lost .... Now I have put the output in CheckStatementTimeout: src/backend/storage/lmgr/proc.c ... static bool CheckStatementTimeout(void) { TimestampTz now; if (!statement_timeout_active) return true; /* do nothing if not active */ now = GetCurrentTimestamp(); if (now >= statement_fin_time) { /* Time to die */ statement_timeout_active = false; cancel_from_timeout = true; elog(FATAL, "enter: CheckStatementTimeout - next statement send kill"); #ifdef HAVE_SETSID /* try to signal whole process group */ kill(-MyProcPid, SIGINT); #endif kill(MyProcPid, SIGINT); } ... gmake check: prepared_xacts.out ... -- pxtest3 should be locked because of the pending DROP set statement_timeout to 2000; SELECT * FROM pxtest3; FATAL: enter: CheckStatementTimeout - next statement send kill LINE 1: SELECT * FROM pxtest3; ^ FATAL: enter: CheckStatementTimeout - next statement send kill LINE 1: SELECT * FROM pxtest3; ^ connection to server was lost So the next thing should be that the backend process (the one hanging in the SELECT) should receive the SIGINT - correct? Bye Rainer On 25.02.2014 20:29, Tom Lane wrote: > Rainer Tammer <pgsql@spg.schulergroup.com> writes: >> There is a pg_sema.c in src/backend/port. >> This is linked ti sysv_sema.c, there is also a posix_sema.c. >> How do you select the one or the other? > The configure script chooses which to use for a particular platform. > > Perhaps it should be making a different choice for AIX? > > regards, tom lane > >
В списке pgsql-bugs по дате отправления: