CTDB2releaseNotes: Difference between revisions

From SambaWiki
(ctdb 2.0)
 
Line 1: Line 1:
== ctdb 2.2 ==
:Release Notes for ctdb 2.2
:May 29, 2013

===Changes===

===User-visible changes===

* The "stopped" event has been removed.
:The "ipreallocated" event is now run when a node is stopped. Use this instead of "stopped".
* New --pidfile option for ctdbd, used by initscript
* The 60.nfs eventscript now uses configuration files in /etc/ctdb/nfs-rpc-checks.d/ for timeouts and actions instead of hardcoding them into the script.
* Notification handler scripts can now be dropped into /etc/ctdb/notify.d/.
* The NoIPTakeoverOnDisabled tunable has been renamed to NoIPHostOnAllDisabled and now works properly when set on individual nodes.
* New ctdb subcommand "runstate" prints the current internal runstate. Runstates are used for serialising startup.

===Important bug fixes===
* The Unix domain socket is now set to non-blocking after the connection succeeds. This avoids connections failing with EAGAIN and not being retried.
* Fetching from the log ringbuffer now succeeds if the buffer is full.
* Fix a severe recovery bug that can lead to data corruption for SMB clients.
* The statd-callout script now runs as root via sudo.
* "ctdb delip" no longer fails if it is unable to move the IP.
* A race in the ctdb tool's ipreallocate code was fixed. This fixes potential bugs in the "disable", "enable", "stop", "continue", "ban", "unban", "ipreallocate" and "sync" commands.
* The monitor cancellation code could sometimes hang indefinitely. This could cause "ctdb stop" and "ctdb shutdown" to fail.

===Important internal changes===

* The socket I/O handling has been optimised to improve performance.
* IPs will not be assigned to nodes during CTDB initialisation. They will only be assigned to nodes that are in the "running" runstate.
* Improved database locking code. One improvement is to use a standalone locking helper executable - the avoids creating many forked copies of ctdbd and potentially running a node out of memory.
* New control CTDB_CONTROL_IPREALLOCATED is now used to generate "ipreallocated" events.
* Message handlers are now indexed, providing a significant performance improvement.

== ctdb 2.1 ==
== ctdb 2.1 ==
:Release Notes for ctdb 2.1
:Release Notes for ctdb 2.1
Line 12: Line 45:
* Fix RSN based recovery of persistent databases to avoid corruption
* Fix RSN based recovery of persistent databases to avoid corruption
* Re-factor and separate IP allocation algorithms
* Re-factor and separate IP allocation algorithms



== ctdb 2.0 ==
== ctdb 2.0 ==

Revision as of 21:24, 30 October 2013

ctdb 2.2

Release Notes for ctdb 2.2
May 29, 2013

Changes

User-visible changes

  • The "stopped" event has been removed.
The "ipreallocated" event is now run when a node is stopped. Use this instead of "stopped".
  • New --pidfile option for ctdbd, used by initscript
  • The 60.nfs eventscript now uses configuration files in /etc/ctdb/nfs-rpc-checks.d/ for timeouts and actions instead of hardcoding them into the script.
  • Notification handler scripts can now be dropped into /etc/ctdb/notify.d/.
  • The NoIPTakeoverOnDisabled tunable has been renamed to NoIPHostOnAllDisabled and now works properly when set on individual nodes.
  • New ctdb subcommand "runstate" prints the current internal runstate. Runstates are used for serialising startup.

Important bug fixes

  • The Unix domain socket is now set to non-blocking after the connection succeeds. This avoids connections failing with EAGAIN and not being retried.
  • Fetching from the log ringbuffer now succeeds if the buffer is full.
  • Fix a severe recovery bug that can lead to data corruption for SMB clients.
  • The statd-callout script now runs as root via sudo.
  • "ctdb delip" no longer fails if it is unable to move the IP.
  • A race in the ctdb tool's ipreallocate code was fixed. This fixes potential bugs in the "disable", "enable", "stop", "continue", "ban", "unban", "ipreallocate" and "sync" commands.
  • The monitor cancellation code could sometimes hang indefinitely. This could cause "ctdb stop" and "ctdb shutdown" to fail.

Important internal changes

  • The socket I/O handling has been optimised to improve performance.
  • IPs will not be assigned to nodes during CTDB initialisation. They will only be assigned to nodes that are in the "running" runstate.
  • Improved database locking code. One improvement is to use a standalone locking helper executable - the avoids creating many forked copies of ctdbd and potentially running a node out of memory.
  • New control CTDB_CONTROL_IPREALLOCATED is now used to generate "ipreallocated" events.
  • Message handlers are now indexed, providing a significant performance improvement.

ctdb 2.1

Release Notes for ctdb 2.1
January 8, 2013

Highlights

  • Support for Samba 4.0.0
To use CTDB 2.1 with Samba 3.x, enable Samba3AvoidDeadlocks tunable
  • Set CTDB_BASE in eventscripts, so they can be run easily
  • Clean up orphaned interfaces
  • Do not restart NFS on reconfigure event
  • Fix RSN based recovery of persistent databases to avoid corruption
  • Re-factor and separate IP allocation algorithms

ctdb 2.0

Release Notes for ctdb 2.0
October 30, 2012

This is long overdue CTDB release. There have been numerous code enhancements and bug fixes since the last release of CTDB.

Highlights

  • Support for readonly records (http://ctdb.samba.org/doc/readonlyrecords.txt)
  • Locking API to detect deadlocks between ctdb and samba
  • Fetch-lock optimization to rate-limit concurrent requests for same record
  • Support for policy routing
  • Modified IP allocation algorithm
  • Improved database vacuuming
  • New test infrastructure

Reporting bugs & Development Discussion

Please discuss this release on the samba-technical mailing list or by joining the #ctdb IRC channel on irc.freenode.net.

All bug reports should be filed under CTDB product in the project's Bugzilla database (https://bugzilla.samba.org/).


Download Details

The source code can be downloaded from:

     http://ftp.samba.org/pub/ctdb/

Git repository

      git://git.samba.org/ctdb.git
      http://git.samba.org/?p=ctdb.git;a=summary  (Git via web)

CTDB documentation

       https://ctdb.samba.org/