There's three things clearly missing in the patch: 1. HOT updates on tables with expression or partial indexes. Hasn't been done yet because it should be pretty straightforward and we've had more important things to do. Though not critical, should be finished before release in my opinion.
2. Pointer swinging. At the moment, after a row is HOT updated, the only way to get rid of the redirecting line pointer is to run VACUUM FULL or CLUSTER (or delete or cold update the row and vacuum). If we want to implement pointer swinging before release, we have to get started now. If we're happy to release without it and address the issue in later releases if it seems important, we need to make a conscious decision on that, now. I personally think we can release without it. 3. Statistics and autovacuum integration. How should HOT updates be taken into account when deciding when to autovacuum and autoanalyze? There's a FIXME comment in analyze.c related to this as well. What additional statio counters do we need? The patch adds counters for HOT updates and for following a HOT chain. Should we have counters for pruning and defraging a page as well? In addition to those, I'm sure there's a lot of small code refactorings etc. to do, as well as more performance testing, but these are the big coding tasks left. Pavan, do you have something in addition to these on your to-do list? -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org