%define initdir %{_sysconfdir}/init.d
-
+Name: ctdb
Summary: Clustered TDB
Vendor: Samba Team
Packager: Samba Team <samba@samba.org>
-Name: ctdb
-Version: 1.0.107
+Version: 1.2.17
Release: 1GITHASH
Epoch: 0
License: GNU GPL version 3
Prereq: /bin/mktemp /usr/bin/killall
Prereq: fileutils sed /etc/init.d
+Prereq: /usr/bin/tdbdump /usr/bin/tdbtool
Provides: ctdb = %{version}
#######################################################################
+
+
%prep
%setup -q
# setup the init script and sysconfig file
install -m644 config/ctdb.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/ctdb
install -m755 config/ctdb.init $RPM_BUILD_ROOT%{initdir}/ctdb
+mkdir -p $RPM_BUILD_ROOT%{_docdir}/ctdb/tests/bin
+install -m755 tests/bin/ctdb_transaction $RPM_BUILD_ROOT%{_docdir}/ctdb/tests/bin
+
# Remove "*.old" files
find $RPM_BUILD_ROOT -name "*.old" -exec rm -f {} \;
%config(noreplace) %{_sysconfdir}/sysconfig/ctdb
%config(noreplace) %{_sysconfdir}/ctdb/notify.sh
+%config(noreplace) %{_sysconfdir}/ctdb/ctdb-crash-cleanup.sh
%config(noreplace) %{_sysconfdir}/ctdb/functions
%attr(755,root,root) %{initdir}/ctdb
%{_sysconfdir}/ctdb/events.d/00.ctdb
%{_sysconfdir}/ctdb/events.d/01.reclock
%{_sysconfdir}/ctdb/events.d/10.interface
+%{_sysconfdir}/ctdb/events.d/13.per_ip_routing
%{_sysconfdir}/ctdb/events.d/11.natgw
%{_sysconfdir}/ctdb/events.d/11.routing
%{_sysconfdir}/ctdb/events.d/20.multipathd
%{_sysconfdir}/ctdb/events.d/41.httpd
%{_sysconfdir}/ctdb/events.d/50.samba
%{_sysconfdir}/ctdb/events.d/60.nfs
-%{_sysconfdir}/ctdb/events.d/61.nfstickle
+%{_sysconfdir}/ctdb/events.d/60.ganesha
+%{_sysconfdir}/ctdb/events.d/62.cnfs
%{_sysconfdir}/ctdb/events.d/70.iscsi
%{_sysconfdir}/ctdb/events.d/91.lvs
%{_sysconfdir}/ctdb/statd-callout
+%{_sysconfdir}/ctdb/interface_modify.sh
%{_sbindir}/ctdbd
%{_bindir}/ctdb
%{_bindir}/smnotify
%{_mandir}/man1/ctdb.1.gz
%{_mandir}/man1/ctdbd.1.gz
%{_mandir}/man1/onnode.1.gz
+%{_libdir}/pkgconfig/ctdb.pc
+
+%{_docdir}/ctdb/tests/bin/ctdb_transaction
+
+%package devel
+Summary: CTDB developmnet libraries
+Group: Development
+
+%description devel
+development libraries for ctdb
+
+%files devel
+%defattr(-,root,root)
%{_includedir}/ctdb.h
+%{_includedir}/ctdb_client.h
+%{_includedir}/ctdb_protocol.h
%{_includedir}/ctdb_private.h
-%{_libdir}/pkgconfig/ctdb.pc
+%{_includedir}/ctdb_typesafe_cb.h
+%{_libdir}/libctdb.a
%changelog
+* Mon Jan 17 2011 : Version 1.2.17
+ - Updates to the event logging from Christian.
+ - Libctdb : traverse support
+ - Updates to the event logging by adding internal ticker.
+ - Addip/Delip/Moveip : make more robust by adding retry if failure
+ - Dont ban nodes for ipreallocation failures, being unhealthy is sufficient
+ - NFS eventscripts : lower the fail/restart limits
+ - Eventscript restart : only restart on monitor event.
+ - Libctdb crash issue from Mike Anderson
+ - chante daemon back to real-time process to handle high load better and reduce
+ time jumped messages.
+ - nfs eventscript : skip checking statd when running on SLES systems
+* Wed Dec 22 2010 : Version 1.2.16
+ - 50.samba dont run serverid wipe in the background in case it
+ is so slow to start that samba manages to come up before it finishes.
+ - 60.nfs wait 10 intervals before trying to restart lockd.
+ flag the node unhealthy after 15 failures.
+ CQ S1021266
+ - 41.httpd httpd can sometimes be slow, wait 5 intervals before we try to
+ restart it and 10 intervals before we flag the node unhealthy.
+* Mon Dec 13 2010 : Version 1.2.15
+ - Add two new debugging commands "ctdb readkey/writekey"
+ - idtree overflow bugfix
+ - only run "serverid wipe" when we are actually running samba
+ - libctdb, add roper input queueing so we can support calling
+ sync functions from an async callback
+ - lvs updates
+ - addip, always wait across at least one ip reallocation, making the
+ command slower, but making it easier to use in scripts
+* Mon Dec 6 2010 : Version 1.2.14
+ - detect when ip allocation is inconsistent and some hosts show -1
+ as the node for the ip.
+ cq s1021073
+ - nfs ganesha support in eventscripts
+ - remove lacount/laccessor from the ltdb header
+* Fri Dec 3 2010 : Version 1.2.13
+ - Fix a bug with the script autostart feature.
+ Dont try to start samba during the init event
+* Mon Nov 29 2010 : Version 1.2.12
+ - If we are no longer natgw master, tell winbind to recycle the socket.
+* Mon Nov 22 2010 : Version 1.2.11
+ - Fix bugs in the evenstcripts where we are supposed to automatically
+ start/stop services when CTDB_MANAGES_* changes, and we were not.
+ - Change 60.nfs to allow kNFSd to have been dead for quite a long time
+ before we flag the node as unehalthy and failover.
+* Mon Nov 15 2010 : Version 1.2.10
+ - Make sure to initialize the statistics start time to current time
+ instead of leaving it to point to start of epoch.
+ CQ : S1020838
+ - Create a new tunable DisableIPFailover that is used to tell ctdb
+ to not check any ip allocation at all and never do any failover
+ This can be used to stop/restart individual nodes without causing
+ any ip failovers to happen.
+* Tue Nov 2 2010 : Version 1.2.9
+ - Drop loglevels on several items and remove spam from the messages file
+ - Both nfs and nfslock can fail so restart both if there is a problem
+* Mon Oct 25 2010 : Version 1.2.8
+ - Allow samba to specify that a new database to attach to/ create
+ should use Jenkins3 hash : CQ1019744
+* Mon Oct 18 2010 : Version 1.2.7
+ - Dont monitor GPFS filesystems in 62.cnfs
+ - If tdb_open() fails, print errno to make troubleshooting easier
+ - Try restarting RPC.LOCKD if it failed to start
+ - Remove a dbug message
+ - Make sure the statd state directory exists before trying to touch files in it.
+* Tue Oct 12 2010 : Version 1.2.6
+ - Move config.tdb handling into a function in 00.ctdb
+ - Latency counters min/max/avg for all latency statistics
+ - Update default hash size to be 100001
+ - Check all bond devices, dont exit after the first one
+ - Change to useing the Jenkins hash for LMASTER selection
+ - Sync with TDB from upstream samba
+ - idtree fix for AIX
+ - remove some log messages
+ - add rolling statistics
+ - libctdb updates
+* Thu Sep 9 2010 : Version 1.2.5
+ - Suppress some VSFTPD warnings
+ - Make sure all STATD directories exist before we dereference them
+ - AIX socket fix
+ - Fix for a crash when we write a debug message after a memory allocation
+ fail. Fix the message and call ctdb_fatal() properly
+ - Move the state directory off /etc/ctdb and to /var/ctdb
+ - Natgw changes to allow "slave only" natgw members
+ - Fix "ctdb listnodes" so it works again.
+* Mon Aug 30 2010 : Version 1.2.4
+ - fix a bug in the ipreallocate eventscript handling
+ - remove a debug logentry
+* Mon Aug 30 2010 : Version 1.2.3
+ - finish moving CTDB off the udnerlying filesystem.
+ both tickles and statd information
+ - new infrastructure to support the above
+ - move configuration of public addresses into a config persistent database
+ (optionally)
+ - infrastructure for the above
+* Fri Aug 20 2010 : Version 1.2
+ - Initial version 1.2 release
+* Tue May 25 2010 : Version 1.9
+ - Lots of changes
+* Wed Mar 25 2010 : Version 1.0.114
+ - Lots of changes from Metze
+* Wed Jan 13 2010 : Version 1.0.113
+ - Incorrect use of dup2() could cause ctdb to spin eating 100% cpu.
+* Tue Jan 12 2010 : Version 1.0.112
+ - Revert the use of wbinfo --ping-dc as it is proving too unreliable.
+ - Minor testsuite changes.
+* Fri Dec 18 2009 : Version 1.0.111
+ - Fix a logging bug when an eventscript is aborted that could cause a crash.
+ - Add back cb_status that was lost in a previous commit.
+* Fri Dec 18 2009 : Version 1.0.110
+ - Metxe: fix for filedescriptor leak in the new eventscript code.
+ - Rusty: fix for a crash bug in the eventscript code.
+* Thu Dec 17 2009 : Version 1.0.109
+ - Massive eventscript updates. (bz58828)
+ - Nice the daemon instead of using realtime scheduler, also use mlockall() to
+ reduce the risk of blockign due to paging.
+ - Workarounds for valgrind when forking once for each script. Valgrind consumes
+ massive cpu when terminating the scripts on virtual systems.
+ - Sync the tdb library with upstream, and use the new TDB_DISALLOW_NESTING flag.
+ - Add new command "ctdb dumpdbbackup"
+ - Start using the new tdb check framework to validate tdb files upon startup.
+ - A new framework where we can control health for individual tdb databases.
+ - Fix a crash bug in the logging code.
+ - New transaction code for persistent databases.
+ - Various other smaller fixes.
+* Mon Dec 7 2009 : Version 1.0.108
+ - Transaction updates from Michael Adam.
+ - Use the new wbinfo --ping-dc instead of -p in the eventscript for samba
+ the check if winbindd is ok.
+ - Add a better "process-exist" for samba so it will automatically
+ reap smbd's on stopped and banned nodes to reclaim subrecords.
+ This will be done a bit differently in the next release.
+ - Use a statically allocated buffer for the 'first-time' capture buffer
+ to reduce the pressure on malloc/free.
* Wed Dec 2 2009 : Version 1.0.107
- fix for rusty to solve a double-free that can happen when there are
multiple packets queued and the connection is destroyed before