Re: Problem with PostgreSQL 9.2.7 and make check on AIX 7.1

From: Rainer Tammer <pgsql(at)spg(dot)schulergroup(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-bugs(at)postgresql(dot)org, cbbrowne(at)gmail(dot)com
Subject: Re: Problem with PostgreSQL 9.2.7 and make check on AIX 7.1
Date: 2014-02-25 08:23:46
Message-ID: 530C5312.3010508@spg.schulergroup.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hello,
First of all: Thanks for the reply.

1. fast shutdown

The unexpected "LOG: received fast shutdown request" is happening
on an installed instance. I have found other articles on the WEB which
describe the same problem (other platform) - unfortunately there was
no real solution to it.

I am not too familiar with the PostgreSQL source code, but the only
location where this message is generated is:

---[postmaster.c]-------
...
/*
* pmdie -- signal handler for processing various postmaster signals.
*/
static void
pmdie(SIGNAL_ARGS)
{
...
case SIGINT:

/*
* Fast Shutdown:
*
* Abort all children with SIGTERM (rollback active transactions
* and exit) and shut down when they are gone.
*/
if (Shutdown >= FastShutdown)
break;
Shutdown = FastShutdown;
ereport(LOG,
(errmsg("received fast shutdown request")));
<------ HERE

if (DLGetHead(BackendList) || AutoVacPID != 0)
{
if (!FatalError)
{
ereport(LOG,
(errmsg("aborting any active
transactions")));
SignalChildren(SIGTERM);
if (AutoVacPID != 0)
signal_child(AutoVacPID, SIGTERM);
/* reaper() does the rest */
}
break;
}

---[postmaster.c]-------

I will try to add some code to get the source of the signal.
Would this help?

2. hang during make check

AIX 7.1 Technology Level 3

PostgreSQL 8.4.20 -> make check does finish without hang
PostgreSQL 9.0.16 -> hang
PostgreSQL 9.2.7 -> hang

As far as I can see the hang is caused by the "set statement_timeout to
2000;"
statement. Where would be a good start point to diagnose this problem??

Would this place be a good start?
Al have already checked if HAVE_SETSID is ausing the problem - unfortunately
that's not the case.

---[src/backend/storage/lmgr/proc.c]------
....
bool
enable_sig_alarm(int delayms, bool is_statement_timeout)
{
TimestampTz fin_time;
struct itimerval timeval;

if (is_statement_timeout)
{
....
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;
#ifdef HAVE_SETSID
/* try to signal whole process group */
kill(-MyProcPid, SIGINT);
#endif
kill(MyProcPid, SIGINT);

---[src/backend/storage/lmgr/proc.c]------

AIX 6.1 Technology Level 6

PostgreSQL 9.2.7 -> make check does finish without a hang.

That is strange. I will try to get a box with the latest AIX 6.1
Technology Level to check is the test will pass, too.

3. Smoker

There are several possibilities to setup a smoker.

a.) IBM does provide Power 7/7+ machines with Power Linux and AIX
6.1/7.1. As far as I know the access is free

This is the URL:
http://www-304.ibm.com/partnerworld/wps/servlet/ContentHandler/stg_com_sys_power-development-platform

Maybe I can help with the setup.

b.) Maybe I can setup a smoker

Is external access to the smoker required?

Bye
Rainer Tammer

On 24.02.2014 21:21, Tom Lane wrote:
> Rainer Tammer <pgsql(at)spg(dot)schulergroup(dot)com> writes:
>> I have compiled 8.2.11 (same as on the old server) and
>> 8.2.23 (latest 8.2) on AIX 7.1 TL3 SP1 (latest level) with
>> the IBM C/C++ V12 compiler.
>> Unfortunate I see the following errors:
>> 2014-02-24 10:07:30 CET LOG: received fast shutdown request <--- here
> If this is the log of a "make check" run, that seems as-expected.
> Otherwise, something is sending the postmaster process a SIGINT.
>
>> So I have decided to give 9.2.7 a try. During the make check I have
>> found two failures - to be more precisely two hangs.
> Hm. Unfortunately, you're kind of on your own to debug this; AFAIK
> there are no active Postgres developers who use AIX. It's been awhile
> since there was an active AIX buildfarm machine either, so that it
> would not exactly be astonishing to find that we'd inadvertently
> broken something for that platform. (And I'm not sure there ever
> was a buildfarm member running AIX 7.1 anyway; according to
> http://buildfarm.postgresql.org/cgi-bin/show_members.pl
> grebe was running 5.3 when last heard from, half a year ago.)
>
> We're still willing to support AIX, but we can't do it without help
> from users of that platform. If you send in a patch for whatever
> is broken, we'll almost certainly accept it (in some form). But
> it would be a good idea to set up a buildfarm animal so that any
> future breakage gets detected in a more timely fashion. See
> http://buildfarm.postgresql.org/index.html
>
> regards, tom lane
>
>

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Patrick Wege 2014-02-25 13:13:31 Re: BUG #9308: The application failed to initialize properly
Previous Message Stephen Frost 2014-02-25 00:34:03 Re: BUG #9337: SSPI/GSSAPI with mismatched user names