[SCM] CTDB repository - annotated tag ctdb-2.2 created - ctdb-2.2

Amitay Isaacs amitay at samba.org
Wed May 29 21:40:36 MDT 2013

The annotated tag, ctdb-2.2 has been created
        at  824b45070d073207156e6d3fb341e750de5b2807 (tag)
   tagging  ac0892d3a57adb0587a37de0f94fa686bed8970f (commit)
  replaces  ctdb-2.1
 tagged by  Amitay Isaacs
        on  Thu May 30 13:40:46 2013 +1000

- Log -----------------------------------------------------------------
New version 2.2

Amitay Isaacs (61):
      recoverd: Fix printing of node flags from local information
      daemon: Make sure all the traverse children are terminated if traverse times out
      eventscripts: Remove calls to "smbstatus -np" for samba cleanup
      ctdbd: Fix the PullDBPreallocation size to 10MB as intended
      common/io: Rewrite socket handling code to read all available data
      ctdbd: Add an index db for message list for faster searches
      common/io: For scheduling immediate events use tevent_schedule_immediate
      logging: Do not ignore stdout/stderr from the exec'd children
      util: Add hex_decode_talloc() to decode hex string into a binary blob
      common/messaging: Free message list header if all message handlers are freed
      common/messaging: Don't forget to free the result returned by tdb_fetch()
      common/messaging: Abstract db related operations inside db functions
      Revert "client: handle transient connection errors"
      client: Set the socket non-blocking only after connect succeeds
      statd-callout: Make sure statd callout script always runs as root
      recoverd/takeover: Use IP->node mapping info from nodes hosting that IP
      tools/ltdbtool: Fix handling of -e option
      tests: Fix typo in variable name
      traverse: Add CTDB_CONTROL_TRAVERSE_ALL_EXT to support withemptyrecords
      traverse: Ensure backward compatibility for CTDB_CONTROL_TRAVERSE_ALL
      tests: Support waiting for "recovered" state in tests
      tests: Add a test for subsequent recoveries corrupting databases
      ctdbd: Set num_clients statistic from ctdb->num_clients
      eventscripts: Do not use bashism for string comparison
      logging: Fix a bug in ringbuffer
      build: Rename version.h to ctdb_version.h
      ctdbd: Print version string in the daemon startup
      tools/ctdb: Fix racy ipreallocate code
      locking: Add newline to debug logs
      locking: Refactor code to iterate over databases based on priority
      locking: Add handler function for locking a database
      locking: Use database iterator for locking databases
      locking: Add handler function for unlocking a database
      locking: Use database iterator for unlocking databases
      locking: Add handler function for marking a database
      locking: Use database iterator for marking databases
      locking: Add handler function for unmarking a database
      locking: Use database iterator for unmarking databases
      locking: Add a standalone helper to lock record/db
      locking: Create commandline arguments for locking helper
      locking: Use separate locking helper binary for locking
      locking: Remove functions that are not used anymore
      locking: Remove functions that are not used anymore
      locking: Set lock helper path once
      tests: Fix output of run_tests usage
      logging: Make sure ringbuffer messages are terminated with a newline
      vacuum: Reduce the priority of non-critical error
      util: Do not stop build if backtracing is not supported
      libctdb: Do not include sys/time.h to support build on AIX
      tests: Include system/time.h to support building on AIX
      tests: Do not use err() to support AIX
      build: Support for building on AIX xlc compiler
      build: Use REPLACE_OBJ and CTDB_EXTERNAL_OBJ to simplify build rules
      git: Ignore ctdb_version.h file
      git: Ignore generated ctdb.spec file
      ctdbd: Log node state transitions at higher debug level
      talloc: Sync to talloc 2.0.8 from upstream
      tdb: Sync to tdb 1.2.11 from upstream
      replace: Sync to latest replace from upstream
      tevent: Sync to tevent 0.9.18 from upstream
      build: Fix extra whitespaces

Christian Ambach (1):
      build: Create sudoers.d dir during make install

David Disseldorp (1):
      pmda: handle new ctdb_statistics format

Martin Schwenke (125):
      tools/ctdb: Fix a compiler warning
      build: Fix a Makefile.in typo
      Logging: New function ctdb_log_ringbuffer_free()
      Logging: Free the ringbuffer in child processes created with ctdb_fork()
      ctdbd: Message logged at exit should be different for different processes
      ctdbd: Remove debug_hung_script_ctx
      ctdbd: Remove command-line option --debug-hung-script
      ctdbd: Complain loudly if CTDB_DEBUG_HUNG_SCRIPT script isn't executable
      ctdbd: Don't use a fixed length buffer for the hung script command
      initscript: export CTDB_EXTERNAL_TRACE
      Logging: Fix breakage when freeing the log ringbuffer
      doc: Fix typo in ctdbd manpage
      client: New generic node listing function list_of_nodes()
      client: Refactor node listing functions to use list_of_nodes()
      recoverd: update_capabilities() should use connected nodes
      tools/ctdb: delip no longer fails if IP can not be moved
      util: New functions ctdb_set_child_info() and ctdb_is_child_process()
      util: ctdb_fork() should call ctdb_set_child_info()
      ctdbd: Add --pidfile option
      initscript: Use a PID file to implement the "status" option
      scripts: ctdb-crash-cleanup.sh uses initscript to see if ctdbd is running
      include: Move ctdb_start_daemon() from ctdb_client.h to ctdb_private.h
      util: Removed unused declaration of ctdbd_start()
      initscript: Remove duplicate setting of $ctdbd
      scripts: Ensure service command is in $PATH in ctdb-crash-cleanup.sh
      scripts: Use $CTDB_SCRIPT_DEBUGLEVEL instead of something more complex
      scripts: Clean up update_tickles() and handling of associated directory
      eventscripts: Ensure directories are created
      scripts: Ensure even external scripts get tagged in logs as "ctdbd"
      ctdbd: Log PID file creation and removal at NOTICE level
      recoverd: Interface reference count changes should not cause takeover runs
      ctdbd: Avoid freeing non-monitor event callback when monitoring is disabled
      ctdbd: New control CTDB_CONTROL_IPREALLOCATED
      recoverd: ctdb_takeover_run() uses CTDB_CONTROL_IPREALLOCATED
      eventscripts: Remove use of "stopped" event
      ctdbd: Remove the "stopped" event
      ctdbd: Log CTDB startup before creating the PID file
      initscript: Look for tdbtool/tdbdump using which, not in fixed locations
      scripts: Fix script_log() regression
      eventscripts: Remove unused function ctdb_check_counter_equal()
      eventscripts: Simplify handling of $service name in reconfigure functions
      eventscripts: Simplify handling of $service name in service_management
      eventscripts: Simplify handling of $service name in start/stop functions
      eventscripts: Simplify handling of $service name in "managed" functions
      eventscripts: counters default to $script_name if $service_name not set
      eventscripts: Assert that $service_name is set in a few key places
      eventscripts; Cleanup up ctdb_check_directories()
      eventscripts: Clean up ctdb_check_command()
      eventscripts: Remove unnecessary variables from killtcp/tickle functions
      eventscripts: Change handling of one-way kills in kill_tcp_connections()
      eventscripts: Reimplement kill_tcp_connections_local_only()
      eventscripts: Refactor connection listing in killtcp and tickle functions
      eventscripts: Remove unused $_killcount from tickle_tcp_connections()
      eventscripts: In killtcp/tickle functions, $_failed should be boolean
      eventscripts: Tweak the timeout check in kill_tcp_connections()
      eventscripts: Minor cleanups for killtcp/tickle functions
      eventscripts: Make the early exit in 01.reclock earlier
      eventscripts: Might as well try to stat the reclock file first
      eventscripts: Use ctdb_check_counter() instead of ctdb_check_counter_limit()
      eventscripts: Remove unused function ctdb_check_counter_limit()
      eventscripts: Factor NFS RPC check action code into nfs_check_rpc_action()
      eventscripts: Move rpc.statd existence check into nfs_check_rpc_service ()
      Revert "Eventscript functions: add optional version to nfs_check_rpc_service()"
      eventscripts: Remove ganesha support from nfs_check_rpc_service()
      eventscripts: Factor out common code from nfs_check_rpc_service()
      eventscripts: nfs_check_rpc_action() should be _nfs_check_rpc_action()
      eventscripts: New function nfs_check_rpc_services()
      eventscripts: NFS RPC checks allows "nfsd" in addition to "knfsd"
      eventscripts: 60.nfs uses nfs_check_rpc_services() to check NFS RPC services
      eventscripts: NFS RPC checks no longer support "knfsd"
      recoverd: Add debug message when dropping IPs in IP allocation
      tests: Unit test diff output should use filtered output
      recoverd: Refactor code to get NoIPTakeover tunable from all nodes
      tests/takeover: Allow per-node tunable settings
      recoverd: Factor out new function all_nodes_are_disabled()
      recoverd: Fix tunable NoIPTakeoverOnDisabled, rename to NoIPHostOnAllDisabled
      tests/takeover: Add takeover tests, mostly for NoIPHostOnAllDisabled
      recoverd: Remove unused mask argument from IP allocation functions
      recoverd: When calculating rebalance candidates don't consider flags
      recoverd: Remove unused mask argument and initial mask calculation
      recoverd: Clear IP flags after IP allocation algorithm has run
      recoverd: Move IP flags into ctdb_takeover.c
      initscript: If CTDB doesn't become ready, print a message before killing
      eventscripts: Fix regression in _loadconfig()
      ctdbd: Removed bogus comment in ctdb_find_iface()
      ctdbd: Log add and delete of IPs
      ctdbd: Log a message when recovery master changes
      scripts: Rework notify.sh to use notify.d/ directory
      Packaging: maketarball.sh should be a bash script due to pushd use
      ctdbd: Update confusing log message
      recoverd: takeover_run_core() should not use modified node flags
      tools/ctdb: Remove duplicate command definition for "sync"
      ctdbd: Replace ctdb->done_startup with ctdb->runstate
      ctdbd: Only start recovery daemon and timed events after setup event
      ctdbd: Start logging process earlier
      ctdbd: New control CTDB_CONTROL_GET_RUNSTATE
      tools/ctdb: New command runstate to print current runstate
      tools/ctdb: "ctdb runstate" now accepts optional expected run state arguments
      ctdbd: Add new runstate CTDB_RUNSTATE_FIRST_RECOVERY
      eventscripts: 11.natgw should not call ctdb tool in "init" event
      ctdbd: When the "setup" event fails log an error and exit, don't abort
      recoverd: Use talloc_array_length() for simpler code
      recoverd: Whitespace improvements
      ctdbd: Update the get_tunable code to return -EINVAL for unknown tunable
      client: async_callback() sets result to -ETIME if a control times out
      recoverd: Set explicit default value when getting tunable from nodes
      recoverd: Handle errors carefully when fetching tunables
      recoverd: Nodes can only takeover IPs if they are in runstate RUNNING
      tests/takeover: New tests to check runstate handling
      tests/takeover: Allow takeover runs with differing IP allocations per node
      tests/takeover: LCP2 tests for weird, unbalanced corner-cases
      tests/takeover: Takeover tests can use up to 1024 and checks limits
      tests/takeover: New test with 900 IPs
      tests: Fix integration tests to use real private IPs
      scripts: Provide mktemp function for platforms without mktemp command
      recoverd: Backward compatibility for nodes without IPREALLOCATED control
      eventscripts: Stop NAT gateway's delete_all() from polluting the log
      packaging: makerpms.sh can take multiple arguments for rpmbuild
      build: Fix install paths for pcp pmda
      build: Separate autoconf macros for pmda
      packaging: Create separate package for pcp pmda
      tests/scripts: Delete unused $rows and $ww variables from run_tests
      tests/integration: Improve debug output for unhealthy cluster after restart
      eventscripts: Fix statd-callout update handling
      doc: Add release notes for 2.2

Mathieu Parent (7):
      build: Add missing LDFLAGS
      doc: allows to -> allows one to
      build: Update config.guess 2012-12-30 and config.sub to 2013-01-11
      common: Detailed platform-specific FIXME
      common: FreeBSD+kFreeBSD: Implement get_process_name (same as in Linux)
      tests: Test portability
      common: Don't lie on unimplemented gratuitous arp

Michael Adam (32):
      server:persistent: fix a comment typo.
      server:persistent: fix a debug message (copy'n'paste error)
      build: silence building of porting_test
      recoverd: remove bogus comment "qqq" from "add prototype new banning code"
      ctdbd: unimplement the unused SET_DMASTER control
      logging: fix comment typo
      Fix a severe recovery bug that can lead to data corruption for SMB clients.
      ctdb_call: don't bump the rsn in ctdb_become_dmaster() any more
      tests: add a comment to recovery db corruption test
      client: fix ctdb_control() to be able to cope with CTDB_CTRL_FLAG_NOREPLY
      vacuum: break line for RO-flags check in delete_record_traverse() for readability
      vacuum: add DEBUG to skip conditions in delete_record_traverse()
      vacuum: simplify ctdb_process_delete_list(): reduce indentation
      vacuum: move variable into scope of use in ctdb_process_delete_list()
      vacuum: move variable into scope of use in ctdb_process_delete_list()
      vacuum: free temporary allocated memory correctly in ctdb_process_delete_list().
      vacuum: fix indentation in ctdb_process_delete_list()
      vacuum: add explicit temporary memory context to ctdb_process_delete_list()
      vacuum: reorder some of ctdb_process_delete_list() more intuitively
      vacuum: introduce the RECEIVE_RECORDS control
      vacuum: turn the vacuuming on lmaster into a three-phase process.
      vacuum: extend the header comment for ctdb_process_delete_list()
      vacuum: Update (C)
      include: define CTDB_REC_RO_FLAGS - all read-only related record flags
      ltdb_server: use CTDB_REC_RO_FLAGS where appropriate
      vacuum: use  CTDB_REC_RO_FLAGS in the vacuuming code
      ctdb_call: use CTDB_REC_RO_FLAGS where appropriate
      ctdb_daemon: use CTDB_REC_RO_FLAGS where appropriate
      recover: use CTDB_REC_RO_FLAGS where appropriate
      ctdbd: update comment describing ctdb_call_send_redirect()
      ctdbd: remove a nonempty blank line
      ctdbd: fix comment explaining redirection of CTDB_REQ_CALL redirection.

Srikrishan Malik (1):
      Changes for unobtrusive recovery and new method for health check.

Sumit Bose (1):
      build: Fix for tevent autoconf check

Volker Lendecke (4):
      Fix a comment typo
      fix a typo
      common/messaging: use tdb_parse_record in message_list_db_fetch
      common/messaging: Use the jenkins hash in ctdb_message


CTDB repository

More information about the samba-cvs mailing list