The annotated tag, ctdb-1.9.1 has been created at b7704b21616233ace5c956b5868566adbf33df35 (tag) tagging 44009e02a661d4a1e14246f650974fc4ed7a07c9 (commit) replaces ctdb-1.0.114 tagged by Rusty Russell on Mon Jul 5 12:26:33 2010 +0930
- Log ----------------------------------------------------------------- 1.9.1 release. Andrew Tridgell (3): tdb: use fdatasync() instead of fsync() in transactions python: use '#!/usr/bin/env python' to cope with varying install locations tdb: update tdb ABI to use hide_symbols=True Brad Hards (1): Spelling fixes for tdb. Jelmer Vernooij (1): subunit: Support formatting compatible with upstream subunit, for consistency. Martin Schwenke (3): Merge commit 'origin/master' Merge branch 'master' of git://git.samba.org/sahlberg/ctdb Fix a thinko in 2ea0a9f1a93781a0d036feb9fcc0d120b182922f. Michael Adam (4): events:50.samba: wipe the local part of the serverid db before starting winbind/smnd/nmbd tests: eliminate a floating point exception by requiring -n option to ctdb_bench tests:ctdb_bench: make send_start_messages() static - eliminates compile warning functions: when checking for a directory also check whether it can be accessed. Ralph Wuerthner (1): ethtool does not support virtio_net devices. Ronnie Sahlberg (70): Merge r...@10.1.1.27:/shared/ctdb/ctdb-git Reduce the loglevel for two log messages for Registering and Deregistering server ids. Merge r...@10.1.1.27:/shared/ctdb/ctdb-git When we forcefully abort a running eventscript, dont log this as is Merge r...@10.1.1.27:/shared/ctdb/ctdb-git Lower the loglevel for "Recovery lock successfully taken" Merge r...@10.1.1.27:/shared/ctdb/ctdb-git In the recovery daemon, keep track of which node we have assigned public ip Fix a compiler warning Merge r...@10.1.1.27:/shared/ctdb/ctdb-git add a missing || add an example script that can be called from crontab to cleanup In the example script to remove all ip addresses after a ctdb crash, Add a setting where CTDB will monitor and warn for low memory conditions. If the admin makes a configuration mistake and configures NATGW to use the In the log message when we have found an inconsistent ip address allocation, Make create_merged_ip_list() a static function since The recent change to the recovery daemon to keep track of and Dont check ip assignment across the cluster while ip-verification Add a new eventscript 62.cnfs to integrate better with gpfs/cnfs when performing a recovery, Add the number of performed recoveries to the "ctdb statistics" output. Enhance the "ctdb restoredb" command so you can restore a backup into a different database. In control_ipreallocate() we wait at most 5 tries before aborting the command It was possible for ->recovery_mode to get out of sync with the new three db priorities in such a way that in 62.cnfs, lines in /etc/exports can have hte exports quoted, Add monitoring of quorum and make the node UNHEALTHY when quarum is lost new version 1.9 Merge commit 'rusty/libctdb2' make sure we build libctdb for "make all" make install to install libctdb.a move the header files and libctdb.a out into a separate ctdb-devel rpm check if vnn is a valid pointer before dereferencing it add a gplv3 boilerplate to the example application for libctdb Prevent clients from connecting to the natgw address. Dont check linkstatus for loopback. This interface never has When adding an ip at runtime, it might not yet have an iface assigned to it, so ensure that the next takover_ip call will fall through to accept the ip and add it. rename ccan/typesafe_cb.h to ctdb_typesafe_cb.h and Update the tst.c example application for libctdb to Dont link with libctdb rename ctdb_send_message to ctdb_client_send_message to resolve colission with the function of the same name in libctdb rename ctdb_set_message_handler to ctdb_client_set_message_handler rename ctdb_message_fn_t to ctdb_msg_fn_t to avoid a conflict with the type of the same name used in libctdb rename ctdb_remove_message_handler to ctdb_client_remove_message_handler add a function to read the current socketname from the ctdb structure add a sync wrapper for the getpnn control link ctdb with libctdb and connect to the daemon both the old way and by using libctdb Add a variable for start/current time to ctdb statistics Automatically free the request once the callback has returned. Make the call to free the request explicit in the callback Add the offsetof macro to libctdb ctdb_req_control contains 4 padding bytes. Create an explicit pad variable here and set it to 0 when creating a control to keep valgrind happy. When we say "current time of statistics" in the "ctdb statistics" output, remove the global rrl_cb_called from the libctdb example Readrecordlock changes: Update the ctdb tool to use the new signature for ctdb_connect() Must initialize ctdb->locks or else bad things happen update "ctdb pnn" to use the new return value for _recv() where Split ctdb_release_lock() into a function to release the locvk and another function to free the data structures. In ctdb_writerecord() Additional log messages when tdb databases can no longer be chainlocked or chainunlocked Some "ctdb ..." commands can be run without having the main daemon running. when tdb_chainunlock() fails, print the tdb error that occured print the db name qwhen a chainunlock fails too add additional logging when tdb_chainunlock() fails add extra logging for failed ctdb_ltdb_unlock() for a few more places We can not be holding a chainlock at this stage, so the tdb_chainunlock() call is bogus idr can timeout and wrap/be reused quite quickly. fix a debug message Wrap the IDR early, but not too early. Ronnie sahlberg (5): Merge commit 'rusty/tdb-update' Merge commit 'rusty/signal-fix' Merge commit 'obnox/master-rebase' document how to restore a backup into a different database Merge commit 'rusty/idtree' Rusty Russell (67): eventscript: fix case where we fail to create child for some reason eventscript: don't do debugging system() from inside signal handler eventscript: wait for debugging dump before killing timedout script eventscript: simplify script timeout handling tdb: give a name to the invalid recovery area constant (0) tdb: fix recovery reuse after crash tdb: cleanup: split brlock and brunlock methods. tdb: make _tdb_transaction_cancel static. tdb: cleanup: rename GLOBAL_LOCK to OPEN_LOCK. tdb: cleanup: rename global_lock to allrecord_lock. tdb: cleanup: tdb_nest_lock/tdb_nest_unlock tdb: don't suppress the transaction lock because of the allrecord lock. tdb: cleanup: tdb_have_extra_locks() helper tdb: cleanup: tdb_release_extra_locks() helper tdb: cleanup: find_nestlock() helper. tdb: use tdb_nest_lock() for transaction lock. tdb: use tdb_nest_lock() for open lock. tdb: use tdb_nest_lock() for active lock. tdb: use tdb_nest_lock() for seqnum lock. tdb: remove num_locks tdb: cleanup: always grab allrecord lock to infinity. tdb: suppress record write locks when allrecord lock is taken. tdb: tdb_allrecord_lock/tdb_allrecord_unlock/tdb_allrecord_upgrade tdb: cleanup: remove ltype argument from _tdb_transaction_cancel. tdb: rename tdb_release_extra_locks() to tdb_release_transaction_locks() tdb: remove lock ops tdb: don't truncate tdb on recovery tdb: add -k option to tdbtorture patch tdb-refactor-tdb_lock-and-tdb_lock_nonblock.patch tdb: handle processes dying during transaction commit. tdb: define _PUBLIC_ so we can compile tdb. ctdb: use full range of IDR libctdb: reorganize headers: remove ctdb.h, add ctdb_client.h and ctdb_protocol.h libctdb: ctdb.h and tst.c from Ronnie libctdb: API changes from Ronnie's version libctdb: first cut, supports getrecmaster only libctdb: Ronnie's build changes, so we actually build libctdb with make. tst.c: update to Ronnie's latest patch libctdb-single-callback.patch libctdb: uniform callbacks, _recv functions to pull out data. libctdb: tweak interface for readrecordlock libctdb: fix wrong argument being handed to callback on attachdb fail libctdb: change callback for ctdb_readrecordlock. libctdb: add ctdb arg to more functions. libctdb: add logging infrastructure patch libctdb-use-logging.patch libctdb: track lock for each ctdb_db, complain if they hold too long. libctdb: use bool in API libctdb: use values from ctdb_protocol.h, don't re-declare libctdb: documentation libctdb: use magic to detect free/invalid locks libctdb: clarify logging levels libctdb: more bool conversion, and accompany lock by ctdb_db in API libctdb: always check header hasn't changed on local tdb libctdb: connect TDB logging to our logging idtree: fix handling of large ids (eg INT_MAX) Delay reusing ids to make protocol more robust speed startup: alter recovery loop speed startup: immediately run first monitor event after startup. speed startup: don't wait a full recovery interval if we've already waited speed startup: run startup immediately after recovery finished. speed startup: add --sloppy-start. speed startup: with --sloppy-start, cut initial election timeout to 1/2 second. ctdb_freeze: extend db priority hack to cover serverid.tdb deadlock. tdb: improve logging Report client for queue errors. version: generate RPM version from git Simo Sorce (3): tdb: raise version to 1.2.1 release-scripts: parametrize scripts tdb: update exports and signatures files Volker Lendecke (10): Fix a typo in run_startrecovery_eventscript In ctdb catdb, print the payload data length without the ctdb header length Fix a typo in run_startrecovery_eventscript In ctdb catdb, print the payload data length without the ctdb header length tdb: Apply some const, just for clarity tdb: If tdb_parse_record does not find a record, return -1 instead of 0 tdb: Fix bug 7248, avoid the nanosleep dependency Fix some nonempty blank lines tdb: Fix indentation in tdb_new_database() tdb: Add a non-blocking version of tdb_transaction_start Wolfgang Mueller-Friedt (1): ctdb_setstatus in /etc/ctdb/functions was not working correctly because it was called with a wrong parameter list ----------------------------------------------------------------------- -- CTDB repository