Re: unlogged tables vs. GIST
Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Robert Haas <robertmhaas@gmail.com>, pgsql-hackers@postgresql.org
Date: 2010-12-17T19:19:11Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
The GiST scan algorithm uses LSNs to detect concurrent pages splits, but
- 2edc5cd493ce 9.1.0 cited
On 17.12.2010 21:07, Tom Lane wrote: > IIUC, the problem is that the bufmgr might think that a GIST NSN is an > LSN that should affect when to force out a dirty buffer? What if we > taught it the difference? We could for example dedicate a pd_flags > bit to marking pages whose pd_lsn isn't actually an LSN. > > This solution would probably imply that all pages in the shared buffer > pool have to have a standard PageHeaderData header, not just an LSN at > the front as is assumed now. But that doesn't seem like a bad thing to > me, unless maybe we were dumb enough to not use a standard page header > in some of the secondary forks. I'm not very fond of expanding buffer manager's knowledge of the page layout. How about a new flag in the buffer desc, BM_UNLOGGED? There was some talk about skipping flushing of unlogged tables at checkpoints, I think we'd need BM_UNLOGGED for that anyway. Or I guess we could hang that behavior on the pd_flags bit too, but it doesn't seem like the right place for that information. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com