The annotated tag, ctdb-1.10 has been created at 508ac16b3614b02d949d02ceb2d65495946383b2 (tag) tagging 401ad5bb3c4d2f34e34c4b61649c77391ac2f791 (commit) replaces ctdb-1.9.1 tagged by Ronnie Sahlberg on Thu Oct 21 11:19:44 2010 +1100
- Log ----------------------------------------------------------------- Version 1.10 Andrew Tridgell (1): tdb: added TDB_NO_FSYNC env variable Evan Kinney (1): ctdb: Fixed use of reserved word "private" in typedefs Günther Deschner (1): lib/tdb: fix c++ build warning in tdb_header_hash(). Harald Klatte (1): AIX bind wants the correct addrsize Jelmer Vernooij (3): pytdb: Make filename argument optional. pytdb: Include Python.h first to prevent warning. pytdb: Add __version__ attribute. Kirill Smelkov (9): pytdb: Add support for tdb_add_flags() & tdb_remove_flags() pytdb: Fix repr segfault for internal db pytdb: Update open flags to match those for tdb_open() in tdb.h pytdb: Add support for tdb_enable_seqnum, tdb_get_seqnum and tdb_increment_seqnum_nonblock pytdb: Add support for tdb_transaction_prepare_commit() pytdb: Add support for tdb_freelist_size() pytdb: Add TDB_INCOMPATIBLE_HASH open flag pytdb: Add support for tdb_repack() pytdb: Check errors after PyObject_New() calls Martin Schwenke (54): Test suite: handle change to disconnected node error message. Test suite: handle extra lines in statistics output. Optimise 61.nfstickle to write the tickles more efficiently. Testing: Add Python IP allocation simulation. Test suite: handle change to disconnected node error message. Test suite: handle extra lines in statistics output. Optimise 61.nfstickle to write the tickles more efficiently. Testing: Add Python IP allocation simulation. Merge branch 'master' of git://git.samba.org/sahlberg/ctdb Testing: Add imbalance information to IP allocation simulation. Testing: In IP allocation simulation count total number of events. Testing: IP allocation simulation prints final imbalance in statistics. Testing: IP allocation simulation - save some warnings for verbose mode. Testing: IP allocation simulation - add command line option for random seed. Testing: IP allocation simulation - update copyright message. Testing: IP allocation simulation - Tweak options handling and Cluster.diff(). Testing: IP allocation simulation - fix nondeterminism in do_something_random(). Testing: IP allocation simulation - Update README. Testing: IP allocation simulation - update options processing in examples. Testing: IP allocation simulation - add general node group example. Testing: IP allocation simulation - rename an example to node_group_simple.py. Testing: IP allocation simulation - rename an example to node_group_extra.py. Testing: IP allocation simulation - make usage/failure more obvious. Testing: IP allocation simulation - improve help for options. Testing: IP allocation simulation - print maximum number of unhealthy nodes. Testing: IP allocation simulation - clean up usage message. Testing: IP allocation simulation - add option to change odds of a failure. Test suite - try to make addip test more reliable and add some debugging. Merge remote branch 'martins/master' Test suite - fix addip test. Test suite: remove thaw/freeze tests. Test suite - make the ctdb_fetch test cope with "Reqid wrap!" messages. initscript: wait until we can ping ctdbd before setting tunables. Test suite: weaken ctdb continue/enable tests for non-deterministic IPs. Test suite: Fix typo in continue test. Test suite: remove unnecessary verbosity from enable/continue tests. Add some command-line options to ctdb_diagnostics. Test suite: make addip test use $CTDB rather than ctdb in debug code. Test suite: improve wait_until_node_has_status() Test suite: use $CTDB rather than ctdb everywhere in ctdb_test_functions.sh. Test suite: strengthen function _cluster_is_healthy(). Test suite: print date/time at test completion. Test suite: Add more timestamping of debugging information. Test suite: loosen the getmonmode test. Move NAT gateway firewall rules to recovered|updatenatgw events. Merge branch 'master' of git://git.samba.org/sahlberg/ctdb Merge branch 'master' of git://git.samba.org/sahlberg/ctdb Test suite: in the test eventscript, run "ctdb" not "$CTDB". NFS tickles: use addtickle/deltickle instead of shared tickle directory. Test suite: NFS tickle test uses gettickles if events.d/61.nfstickle missing. Test suite: Fix typos in NFS tickle test. Test suite: Tweak NFS tickle test. Test suite: Fix NFS tickle test. Test suite: Make NFS tickle test more flexible. Ronnie Sahlberg (77): Merge commit 'rusty/master' Add a code-style document. remove the "ctdb freeze" debugging command iupdate the docs that ctdb freeze is no more Merge remote branch 'martins/master' Update a log message to reflect that this does no longer only happen Create a new command "ctdb sync" that isd just an alias for "ctdb ipreallocate" Merge commit 'rusty/libctdb-new' into foo We use eventloop nesting in a couple of places, notably the sync update the example for the new signature of Add a new "ctdb addtickle" command to manually add tickles to ctdbd Remove the structure ctdb_control_tcp_vnn since this is identical to the structure ctdb_tcp_connection. Add machinereadable output for the "ctgdb gettickles <ip>" command On RHEL, "service nfs stop;service nfs start" and "service nfs restart" Merge commit 'rusty/vacuum-fix-master' Merge commit 'rusty/ports-from-1.0.112' into foo We need the deprecated talloc_append_string() for now Dont use the deprecated talloc_append_string() make it possible to "ctdb gettickle" to only list tickles for a certain add a new commandline flag -v to enable verbose output ctdb ip is very busy. Dont set next_interval to 0. move the directives to build the devel file to the end of the specfile Add a command "ctdb pfetch <db> <record>" to read a record from get rid of two compiler warnings add a command to write a record to a persistent database change "ctdb pfetch" to take an optional third argument run the "init" event before we freeze the databases When "ctdb pfetch" creates a new file, make sure we set some initial sane mode bits add a new command "ctdb tfetch" that can read a record straight out of the the tfetch command can be used without the daemon running, so flag it as such. Add a configuration database, implemented as a persistent database. Add a new event "ipreallocated" Remove the dependency on the underlying cluster filesystem for handling remove the mention of a tickle and statd directory in shared storage now that we are removing these and migrating to store the data inside ctdbd or persistent databases Merge commit 'martins/master' we no longer have a 61.nfstickle script remove 61.nfstickles from the makefile ouch, the ordering of the constants and the strings must be kept in sync ouch, remove a dummy debug printout that snuck in there somehow dont print a lot of log information about shutting down vsftpd make sure all statd state directories exist before we try to reference them When memory allocations for recovery fails, Dont store temporary runtime data in $CTDB_BASE/state Change how NATGW is configured to allow special nodes that do not have Dont try to read the nodemap from the daemon for "ctdb listnodes" remove an unused variable Implement a new function GETNODEMAP in libctdb. Add two new server types to the server_id structure. define and reserve a range of ctdb message ports for use by nfs and iscsi servers Update the comment for the range reserved for SAMBA and add a new serverid to send a message everytime an ip address is taken on the local node adda GETPUBLICIPS control to libctdb and use this in the test example set up a handler to catch and log debug messages from the tevent layer update/improve the log message related to rerecovery timeouts Add back monitoring for time skips, forward as well as backward. Create macros to update the statistics counters and use these macros Add a new statistics structure to keep the current running statistics Add rolling statistics that are collected across 10 second intervals. Create a tunable for how often to collect rolling statistics and initialize it to 1 second add a machinereadable version of ctdb stats/statistics when printing machinereadable statistics only print the header with the fieldnames once Dont log a normal vacuuming message about a missing record and using default vacuuming intervals as an error. get rid of the "ctdb setflags" command since Merge commit 'rusty/tdb-update' change the hash function to use the much better Jenkins hash Spotted by rusty. dont stop checking interfaces after the first bond device Revert "change the hash function to use the much better Jenkins hash" Update the default hash size to be 100001 instead of 10000 Update latency countes to show min/max and average move extracting the config from config.tdb for public addresses Make sure the statd directory exist before trying to access the Remove a debug message "Timed out waiting ..." try to restart NFS LOCKD if it failed to start If tdb_open() fails when trying to open the vacuuming database, new version 1.10 Rusty Russell (41): libctdb: removed unused lock field from struct ctdb_db libctdb: fix uninitialized field usage on ctdb_attach failure path libctdb: synchronous should be using ctdb_cancel to kill unfinished requests. libctdb: check ctdb_request_free & ctdb_cancel used appropriately. libctdb: ctdb_service() never returns < 0 libctdb: fix writerecord() to actually write the record. libctdb: fix io_elem resource leak on realloc failure. libctdb: implement ctdb_disconnect and ctdb_detachdb libctdb: implement synchronous readrecordlock interface. libctdb: test infrastructure libctdb: test: logging enhancement libctdb: test: improve logging of failure paths libctdb: test: --no-failtest libctdb: test: add database save and restore libctdb: test: add readrecordlock support libctdb: test: run.sh script ctdb: fix crash on "ctdb scriptstatus --events=releaseip" config: wrap iptables in flock to avoid concurrancy. libctdb: add synchronous message handling and unregister, with tests. tdb: fix short write logic in tdb_new_database tdb: remove unused variable in tdb_new_database(). tdb: Fix tdb_check() to work with read-only tdb databases. tdb: workaround starvation problem in locking entire database. talloc: update to 2.0.3 version from SAMBA event: Update events to latest Samba version 0.9.8 freeze: abort vacuuming when we're going to freeze. vacuum: fix crash on vacuum abort vacuum: disabling vacuuming during a freeze takeover: prevent crash by avoiding free in traverse on RST timeout logging: give a unique logging name to each forked child. tdb: make check more robust against recovery failures. tdb: fix tdb_check() on read-only TDBs to actually work. tdb: fix tdb_check() on other-endian tdbs. tdb: put example hashes into header, so we notice incorrect hash_fn. tdb: increment version to 1.2.4 tdb: add Bob Jenkins lookup3 hash as helper hash. tdb: automatically identify Jenkins hash tdbs tdb: TDB_INCOMPATIBLE_HASH, to allow safe changing of default hash. tdb: fix non-WAF build, commit 1.2.6 ABI file. idtree: fix right shift of signed ints, crash on large ids on AIX idtree: fix right shift of signed ints, crash on large ids on AIX Stefan Metzmacher (15): config/interface_modify.sh: before calling a script check if it exists and is executable config/interface_modify.sh: do the echo before running the script events/10.interface: we need to mark interfaces as "up" if we don't know how to monitor them server/monitor: ask for a takeoverrun after propagating our new flags server/recoverd: do takeover_run after verifying the reclock file server/recoverd: if we can't get the recovery lock, ban ourself server/banning: also release all ips if we're banning ourself events.d/11.routing: handle "updateip" event tools/ctdb: let "ctdb catdb" pass the persistent flag to ctdb_attach() tools/ctdb: add 'persistent' flag to "ctdb attach" tools/ctdb: allow "ctdb pfetch" only on persistent databases doc/ctdb.1: document "persistent" flag for "ctdb atttach" doc/ctdb.1: fix "ctdb restore <filename> [<dbname>]" cmdline doc: regenerate docs web: fix link to tdb README Volker Lendecke (2): Correctly set docdir tdb: add restore ----------------------------------------------------------------------- -- CTDB repository