Re: Scaling XLog insertion (was Re: Moving more work outside WALInsertLock)

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Jeff Janes <jeff(dot)janes(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Scaling XLog insertion (was Re: Moving more work outside WALInsertLock)
Date: 2012-03-07 15:04:19
Message-ID: 7130.1331132659@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> Just to keep things in perspective -- For a commit record to reach one
> megabyte, it would have to be a transaction that drops over 43k tables.
> Or have 64k smgr inval messages (for example, a TRUNCATE might send half
> a dozen of these messages). Or have 262k subtransactions. Or
> combinations thereof.

> Now admittedly, a page is only 8 kB, so for a commit record to be "many
> pages long" (that is, >=3) it would require about 1500 smgr inval
> messages, or, say, about 250 TRUNCATEs (of permanent tables with at
> least one toastable field and at least one index).

What about the locks (if running hot-standby)?

> So they are undoubtely rare. Not sure if as rare as Higgs bosons.

Even if they're rare, having a major performance hiccup when one happens
is not a side-effect I want to see from a patch whose only reason to
exist is better performance.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Simon Riggs 2012-03-07 15:17:10 Re: Scaling XLog insertion (was Re: Moving more work outside WALInsertLock)
Previous Message Robert Haas 2012-03-07 14:59:00 Re: RFC: Making TRUNCATE more "MVCC-safe"