Re: [HACKERS] Configuring BLCKSZ and XLOGSEGSZ (in 8.3)
От | Tom Lane |
---|---|
Тема | Re: [HACKERS] Configuring BLCKSZ and XLOGSEGSZ (in 8.3) |
Дата | |
Msg-id | 14231.1165357573@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: [HACKERS] Configuring BLCKSZ and XLOGSEGSZ (in 8.3) ("Simon Riggs" <simon@2ndquadrant.com>) |
Ответы |
Re: [HACKERS] Configuring BLCKSZ and XLOGSEGSZ (in 8.3)
|
Список | pgsql-patches |
"Simon Riggs" <simon@2ndquadrant.com> writes: > On Tue, 2006-12-05 at 16:24 -0500, Tom Lane wrote: >> Sure, what would happen is that every backend passing through this code >> would execute the several lines of computation needed to decide whether >> to call RequestCheckpoint. > Right, but the calculation uses RedoRecPtr, which may not be completely > up to date. So presumably you want to re-read the shared memory value > again to make sure we are exactly accurate and allow only one person to > call checkpoint? Either way we have to take a lock. Insert lock causes > deadlock, so we would need to use infolock. Not at all. It's highly unlikely that RedoRecPtr would be so out of date as to result in a false request for a checkpoint, and if it does, so what? Worst case is we perform an extra checkpoint. Also, given the current structure of the routine, this is probably not the best place for that code at all --- it'd make more sense for it to be in the just-finished-a-segment code stretch, which would ensure that it's only done by one backend once per segment. regards, tom lane
В списке pgsql-patches по дате отправления: