[COMMITTERS] pgsql: Revamp the WAL record format.

2014-11-20 Thread Heikki Linnakangas
Revamp the WAL record format. Each WAL record now carries information about the modified relation and block(s) in a standardized format. That makes it easier to write tools that need that information, like pg_rewind, prefetching the blocks to speed up recovery, etc. There's a whole new API for bu

Re: [COMMITTERS] pgsql: Revamp the WAL record format.

2014-11-20 Thread Tom Lane
Heikki Linnakangas writes: > Revamp the WAL record format. My version of gcc bitches about this: nbtxlog.c: In function 'btree_xlog_split': nbtxlog.c:272: warning: 'newitem' may be used uninitialized in this function nbtxlog.c:272: note: 'newitem' was declared here regar

Re: [COMMITTERS] pgsql: Revamp the WAL record format.

2014-11-20 Thread Heikki Linnakangas
On 11/20/2014 07:12 PM, Tom Lane wrote: Heikki Linnakangas writes: Revamp the WAL record format. My version of gcc bitches about this: nbtxlog.c: In function 'btree_xlog_split': nbtxlog.c:272: warning: 'newitem' may be used uninitialized in this function nbtxlog.c:272: note: 'newitem' was de

[COMMITTERS] pgsql: Silence compiler warning about variable being used uninitialized

2014-11-20 Thread Heikki Linnakangas
Silence compiler warning about variable being used uninitialized. It's a false positive - the variable is only used when 'onleft' is true, and it is initialized in that case. But the compiler doesn't necessarily see that. Branch -- master Details --- http://git.postgresql.org/pg/commitdi

[COMMITTERS] pgsql: Add missing case for CustomScan.

2014-11-20 Thread Tom Lane
Add missing case for CustomScan. Per KaiGai Kohei. In passing improve formatting of some code added in commit 30d7ae3c, because otherwise pgindent will make a mess of it. Branch -- master Details --- http://git.postgresql.org/pg/commitdiff/f9e0255c6fbedda50aae6aa7479f0c5a8f90b831 Modif

[COMMITTERS] pgsql: Remove no-longer-needed phony typedefs in genbki.h.

2014-11-20 Thread Tom Lane
Remove no-longer-needed phony typedefs in genbki.h. Now that we have a policy of hiding varlena catalog fields behind "#ifdef CATALOG_VARLEN", there is no need for their type names to be acceptable to the C compiler. And experimentation shows that it does not matter to pgindent either. (If it di

[COMMITTERS] pgsql: Fix another oversight in CustomScan patch.

2014-11-20 Thread Tom Lane
Fix another oversight in CustomScan patch. disuse_physical_tlist() must work for all plan types handled by create_scan_plan(). Branch -- master Details --- http://git.postgresql.org/pg/commitdiff/03e574af5f5d4682ce3ae6dc401ba126c70ce2ea Modified Files -- src/backend/optimize

[COMMITTERS] pgsql: Fix another oversight in CustomScan patch.

2014-11-20 Thread Tom Lane
Fix another oversight in CustomScan patch. execCurrent.c's search_plan_tree() must recognize a CustomScan on the target relation. This would only be helpful for custom providers that support CurrentOfExpr quals, which is probably a bit far-fetched, but it's not impossible I think. But even witho

[COMMITTERS] pgsql: Initial code review for CustomScan patch.

2014-11-20 Thread Tom Lane
Initial code review for CustomScan patch. Get rid of the pernicious entanglement between planner and executor headers introduced by commit 0b03e5951bf0a1a8868db13f02049cf686a82165. Also, rearrange the CustomFoo struct/typedef definitions so that all the typedef names are seen as used by the compi

[COMMITTERS] pgsql: Remove dead code supporting mark/restore in SeqScan, TidScan, Va

2014-11-20 Thread Tom Lane
Remove dead code supporting mark/restore in SeqScan, TidScan, ValuesScan. There seems no prospect that any of this will ever be useful, and indeed it's questionable whether some of it would work if it ever got called; it's certainly not been exercised in a very long time, if ever. So let's get rid