From: | Amit Kapila <amit(dot)kapila(at)huawei(dot)com> |
---|---|
To: | "'Heikki Linnakangas'" <hlinnakangas(at)vmware(dot)com>, "'Andres Freund'" <andres(at)2ndquadrant(dot)com> |
Cc: | "'Jeff Janes'" <jeff(dot)janes(at)gmail(dot)com>, "'Alvaro Herrera'" <alvherre(at)2ndquadrant(dot)com>, "'PostgreSQL-development'" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: XLogInsert scaling, revisited |
Date: | 2013-07-17 10:16:00 |
Message-ID: | 008c01ce82d6$a38a86e0$ea9f94a0$@kapila@huawei.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Monday, July 08, 2013 2:47 PM Heikki Linnakangas wrote:
> Ok, I've committed this patch now. Finally, phew!
Few doubts while reading the code:
1. Why in function WALInsertSlotAcquireOne(int slotno), it does
START_CRIT_SECTION() to
Lock out cancel/die interrupts, whereas other places call
HOLD_INTERRUPTS()
2. In function GetXLogBuffer(), why the logic to wakeup waiters is
different when expectedEndPtr != endptr;
When the wakeupwaiters is done in case expectedEndPtr == endptr?
3.
static bool
ReserveXLogSwitch(..)
In above function header, why EndPos_p/StartPos_p is used when
function arguments are EndPos/StartPos?
With Regards,
Amit Kapila.
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Smith | 2013-07-17 10:54:31 | Re: Improvement of checkpoint IO scheduler for stable transaction responses |
Previous Message | Tatsuo Ishii | 2013-07-17 09:40:09 | Re: [PATCH] pgbench --throttle (submission 7 - with lag measurement) |