MAJOR WORK IN PROGRESS
- Win32 - Changes to many areas, especially the postmaster, ipc, libpq
etc, to streamline and allow a single source Win32 port - the Win32 port
is coming closer! (Claudio) Changes are being implemented to allow a
single code base to work across both *NIX and Win32 systems. Mostly,
code changes are such that the original behaviour is preserved, though
in a way that allows it to also work on Win32 systems, or with minor
changes.
- Replication - involving remote copying of WAL logs, then cut-over and
automatic catch-up on secondary node (Jan)
- Background writer work progresses, which is likely to improve overall
scalability/performance by smoothing dirty blocks writes; forms the
basis for increased server availability also (Jan)
- Initial stages of Named Function parameter support have been
committed. pg_proc has a column to store names, and CREATE FUNCTION can
insert data into it, but that's all as yet. (Dennis)
- Buffer manager locking changes: lock contention data have shown that
the BufMgrLock is the major source of contention under heavy load,
effecting multi-CPU SMP scalability. Patch to rework the bufmgr's
locking scheme to be more granular and further perf testing may yield
further perf gains. (Neil)
- Backend internal data structure changes: list rewrite: the linked list
implementation used throughout the backend is being redesigned for
constant-time length and append operations. This was done because
lappend() is called quite frequently, and allows some ugly code
(FastList) to be removed. (Neil)
- Hash index changes: complete wrap up of unique hash indexes, as well
as some improvements to hash index concurrent performance. (Neil)
- Re-evaluation of Genetic Query Optimizer parameters and usage will
likely continue for some and any real usage scenarios/observations are
welcome
- PITR APIs, basic utilities and testing (Simon)
