Re: [HACKERS] Subtransaction commits and Hot Standby
| От | Simon Riggs |
|---|---|
| Тема | Re: [HACKERS] Subtransaction commits and Hot Standby |
| Дата | |
| Msg-id | 1222292659.4445.650.camel@ebony.2ndQuadrant обсуждение исходный текст |
| Ответ на | Re: [HACKERS] Subtransaction commits and Hot Standby (Simon Riggs <simon@2ndQuadrant.com>) |
| Список | pgsql-patches |
On Wed, 2008-09-24 at 13:48 +0100, Simon Riggs wrote: > On Tue, 2008-09-23 at 22:47 +0100, Simon Riggs wrote: > > > I've tested this some more and am much happier with it now. > > The concept is fine, but I've found a coding bug in further testing. > Please wait now for new version before review. OK, spent long time testing various batching scenarios for this using a custom test harness to simulate various spreads of xids in transaction trees. All looks fine now. The main work is done in new clog.c functions: TransactionIdSetTreeStatus() which sets whole tree atomically by calling TransactionIdSetPageStatus(), which in turn calls TransactionIdSetStatusBit() for each xid status change. TransactionIdSetPageStatus() performs locking and handles write_ok problem, as did code it replaces. TransactionIdSetPageStatus() is called theoretical minimum number of times for any transaction tree. Patch slightly fumbles diff-ing new and replacement code, so there are two chunks that appear to show I'm removing locking. I'm not!! Everything else is just API changes. -- Simon Riggs www.2ndQuadrant.com PostgreSQL Training, Services and Support
Вложения
В списке pgsql-patches по дате отправления: