Hi Markus, and Happy New Year. Thank you for the latest patch which is for PostgreSQL 9.0.2. And thank you for your wonderful work.
Regards, -- At.Mitani On Wed, 12 Jan 2011 15:15:33 +0100 Markus Schmidleitner <[email protected]> wrote: > hi list, > hi mitani! > > @all > here's another patch based on the patches i sent in before. > the current patch is against postgresql 9.0.2 > > i hope anyone will give it a try. > comments/suggestions are highly appreciated! > > @mitani > maybe you can do some code review/testing on it? would be nice ;-) > > i also attached a small script and config files which i use for > regression testing. you may need to change some paths etc. > > best regards, > Markus Schmidleitner > > > how to build? > 1. download postgresql-9.0.2 source package > 2. extract postgresql-9.0.2 source package > 3. mv postgresql-9.0.2 to pgcluster > 4. cd pgcluster > 5. patch -p 1 < > (path_to_patch_file)/postgresql-9.0.2-to-pgcluster-9.0.2.1.patch > 7. mkdir obj > 8. cd obj > 9. ../configure && make maintainer-clean > 10. ../configure && make > ... > > > what's new? > - some changes related to postgresql upgrade > > changes from earlier patches: > - changed version scheme to better reflect postgresql's version > - replication support is now configurable via configure > (try ./configure --help to get a list of available options) > (replication itself and sequence replication is enabled by default) > - some other changes related to postgresql upgrade > - renamed guc-variable 'pgr_force_loadbalance' to 'omit_replication' > - log output of external command's (eg psql) > - pass username where necessary > - update recovery status only for recovery master > - handle failed transactions correctly > - handle failures inside transactions correctly > - fixed bug in scan_terminate > - simlified and improved robustness of scan_terminate and remove_comment > - in postgresql-child processes also check for parent's death > - don't try to reconnect to unknown database > - improved transaction handling > - fixed bugs in cold recovery (works again now) > - fixed bugs in lifecheck process shutdown (was running forever) > - fixed bugs in pglb (compiles again now) > - implemented sequence replication (numbers are generated by > replication-server. NOTE: generating sequence numbers while a copy > operation is in progress is currently not supported!) > - reworked copy operation > - reworked replication (now the work is done locally first and then > replicated - so queries which will fail anyway don't get replicated any > more) > - reworked hot-recovery > - reworked PREPAREd statement handling > - include SAVEPOINT handling > - reject queries on cluster if it is used for recovery > - fixed accept bug in pgreplicate > - fixed bugs in pgc_compare > - handle errors from remote host's so that query will fail on source too > - treat processes lifecheck, recovery provider and recovery as auxilary > processes (autorestart, shutdown, ...) > - start lifecheck, recovery provider ... only if not in standalone mode > - implemented cluster connect/shutdown message > - made regression tests working again (in replication mode) > - default regression tests (make test) now run in standalone-mode > omitting all replication code > - implemented cluster-compare utility (pgc_compare) > - reworked replication of copy commands > - fixed bug in scan_terminate > - fixed some other bugs/issues that prevented regression tests to run > sucessfully > - usage of transactions in conjunction with AutoLockTable now works > - some refactorings and code cleanups > - initdb now works as expected (failed in previous patches) > - added postgresql startup parameter '-a' to set the cluster in full > standalone mode, bypassing all replication operations (mainly for > regression testing and an operational mode which we need here) > - added a few configuration parameters (see current cluster.conf and > pgreplicate.conf) > - now you can specify a comma separated list of hostnames or addresses > in Host_Name-Parameter (currently this is limited to a set of 2 - see > cluster.conf and pgreplicate.conf) > - pgreplicate and postgresql recovery processes now listen only on those > interfaces that are specified > - set default-value of auto_lock_table to false > - reworked locking code and deadlock notification > - some refinements on networking-code > - use modified elog instead of own logging-code (mainly for logging in > common code used by pgreplicate and postgresql - currently logging from > pgreplicate to a logfile is not implemented) > - some more general reworks, dead code eliminations ... > - replication server will be noticed to all clusters > - cluster will be noticed to all replication servers > - standby replication server send cascade info to cluster > * cluster will automatically switch to primary replication server > - primary replication server requests replication servers from cluster > * replication server will automatically setup cascade > * clusters automatically switch back to primary replication server > - added threading-support in pgreplicate (mainly backported from > cybercluster) > - code refactoring > * implemented functions for non-blocking i/o which are used by entire > pgcluster > * all net-i/o operations are non-blocking > * earse dead code > * remove needless memcpy > * other minor reworks > - implemented a cluster-notice message when cascading is used > * it informs the upper and lower cascade that cluster finished > recovery and can be used now > > > > -- mitani <[email protected]> _______________________________________________ Pgcluster-general mailing list [email protected] http://pgfoundry.org/mailman/listinfo/pgcluster-general
