Re: Linux/PostgreSQL scalability issue - problem with 8 cores - Mailing list pgsql-performance

From Tom Lane
Subject Re: Linux/PostgreSQL scalability issue - problem with 8 cores
Date
Msg-id 12997.1200063940@sss.pgh.pa.us
Whole thread Raw
In response to Re: Linux/PostgreSQL scalability issue - problem with 8 cores  (Jakub Ouhrabka <kuba@comgate.cz>)
Responses Re: Linux/PostgreSQL scalability issue - problem with 8 cores  (Jakub Ouhrabka <kuba@comgate.cz>)
List pgsql-performance
Jakub Ouhrabka <kuba@comgate.cz> writes:
> We'we tried hard to identify what's the cause of filling sinval-queue.
> We went through query logs as well as function bodies stored in the
> database. We were not able to find any DDL, temp table creations etc.

Strange.  The best idea that comes to mind is to add some debugging
code to SendSharedInvalidMessage to log the content of each message
that's sent out.  That would at least tell us *what* is going into
the queue, even if not directly *why*.  Try something like (untested)

void
SendSharedInvalidMessage(SharedInvalidationMessage *msg)
{
    bool        insertOK;

+    elog(LOG, "sending inval msg %d %u %u %u %u %u",
+        msg->cc.id,
+        msg->cc.tuplePtr.ip_blkid.bi_hi,
+        msg->cc.tuplePtr.ip_blkid.bi_lo,
+        msg->cc.tuplePtr.ip_posid,
+        msg->cc.dbId,
+        msg->cc.hashValue);
+
    LWLockAcquire(SInvalLock, LW_EXCLUSIVE);
    insertOK = SIInsertDataEntry(shmInvalBuffer, msg);
    LWLockRelease(SInvalLock);

            regards, tom lane

pgsql-performance by date:

Previous
From: Jakub Ouhrabka
Date:
Subject: Re: Linux/PostgreSQL scalability issue - problem with 8 cores
Next
From: Tom Lane
Date:
Subject: Re: Best way to index IP data?