1 | %define initdir %{_sysconfdir}/rc.d/init.d |
---|
2 | |
---|
3 | Summary: A Clustered Database based on Samba's Trivial Database (TDB) |
---|
4 | Name: ctdb |
---|
5 | Version: 2.5.5 |
---|
6 | Release: 1%{?_dist_release} |
---|
7 | License: GPLv3+ |
---|
8 | Group: System Environment/Daemons |
---|
9 | URL: http://ctdb.samba.org/ |
---|
10 | |
---|
11 | Vendor: Project Vine |
---|
12 | Distribution: Vine Linux |
---|
13 | Packager: tomop |
---|
14 | |
---|
15 | # Tarfile created using git |
---|
16 | # git clone git://git.samba.org/sahlberg/ctdb.git ctdb |
---|
17 | # cd ctdb |
---|
18 | # git-archive --format=tar --prefix=%{name}-%{version}/ %{name}-%{version} | bzip2 > %{name}-%{version}.tar.bz2 |
---|
19 | Source0: %{name}-%{version}.tar.gz |
---|
20 | |
---|
21 | # Fedora specific patch, ctdb should not be enabled by default in the runlevels |
---|
22 | #Patch1: ctdb-no_default_runlevel.patch |
---|
23 | |
---|
24 | Requires: chkconfig coreutils psmisc |
---|
25 | Requires: fileutils sed |
---|
26 | Requires: tdb-tools |
---|
27 | Requires(preun): chkconfig initscripts |
---|
28 | Requires(post): chkconfig |
---|
29 | Requires(postun): initscripts |
---|
30 | |
---|
31 | BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) |
---|
32 | BuildRequires: autoconf net-tools popt-devel |
---|
33 | |
---|
34 | %description |
---|
35 | CTDB is a cluster implementation of the TDB database used by Samba and other |
---|
36 | projects to store temporary data. If an application is already using TDB for |
---|
37 | temporary data it is very easy to convert that application to be cluster aware |
---|
38 | and use CTDB instead. |
---|
39 | |
---|
40 | %package devel |
---|
41 | Group: Development/Libraries |
---|
42 | Summary: CTDB clustered database development package |
---|
43 | Requires: ctdb = %{version}-%{release} |
---|
44 | Provides: ctdb-static = %{version}-%{release} |
---|
45 | %description devel |
---|
46 | Libraries, include files, etc you can use to develop CTDB applications. |
---|
47 | CTDB is a cluster implementation of the TDB database used by Samba and other |
---|
48 | projects to store temporary data. If an application is already using TDB for |
---|
49 | temporary data it is very easy to convert that application to be cluster aware |
---|
50 | and use CTDB instead. |
---|
51 | |
---|
52 | |
---|
53 | ####################################################################### |
---|
54 | |
---|
55 | %prep |
---|
56 | %setup -q |
---|
57 | # setup the init script and sysconfig file |
---|
58 | %setup -T -D -n ctdb-%{version} -q |
---|
59 | #%patch1 -p1 |
---|
60 | |
---|
61 | %build |
---|
62 | |
---|
63 | CC="gcc" |
---|
64 | |
---|
65 | ## always run autogen.sh |
---|
66 | ./autogen.sh |
---|
67 | |
---|
68 | CFLAGS="$(echo '%{optflags}') $EXTRA -D_GNU_SOURCE -DCTDB_VERS=\"%{version}-%{release}\"" %configure |
---|
69 | |
---|
70 | perl -pi -e 's|rpcgen|rpcgen -Y /usr/bin|g' Makefile |
---|
71 | make showflags |
---|
72 | make %{_smp_mflags} |
---|
73 | |
---|
74 | %install |
---|
75 | # Clean up in case there is trash left from a previous build |
---|
76 | rm -rf %{buildroot} |
---|
77 | |
---|
78 | # Create the target build directory hierarchy |
---|
79 | mkdir -p %{buildroot}%{_sysconfdir}/sysconfig |
---|
80 | mkdir -p %{buildroot}%{initdir} |
---|
81 | |
---|
82 | make DESTDIR=%{buildroot} install |
---|
83 | |
---|
84 | install -m644 config/ctdb.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/ctdb |
---|
85 | install -m755 config/ctdb.init %{buildroot}%{initdir}/ctdb |
---|
86 | |
---|
87 | mkdir -p %{buildroot}%{_docdir}/ctdb/tests/bin |
---|
88 | install -m755 tests/bin/ctdb_transaction %{buildroot}%{_docdir}/ctdb/tests/bin |
---|
89 | |
---|
90 | |
---|
91 | # Remove "*.old" files |
---|
92 | find %{buildroot} -name "*.old" -exec rm -f {} \; |
---|
93 | |
---|
94 | # fix doc path |
---|
95 | mv %{buildroot}%{_docdir}/ctdb %{buildroot}%{_docdir}/ctdb-%{version} |
---|
96 | cp -r COPYING web %{buildroot}%{_docdir}/ctdb-%{version} |
---|
97 | |
---|
98 | %clean |
---|
99 | rm -rf %{buildroot} |
---|
100 | |
---|
101 | %post |
---|
102 | /sbin/chkconfig --add ctdb |
---|
103 | |
---|
104 | %preun |
---|
105 | if [ "$1" -eq "0" ] ; then |
---|
106 | /sbin/service ctdb stop > /dev/null 2>&1 |
---|
107 | /sbin/chkconfig --del ctdb |
---|
108 | fi |
---|
109 | |
---|
110 | %postun |
---|
111 | if [ "$1" -ge "1" ]; then |
---|
112 | /sbin/service ctdb condrestart >/dev/null 2>&1 || true |
---|
113 | fi |
---|
114 | |
---|
115 | |
---|
116 | # Files section |
---|
117 | |
---|
118 | %files |
---|
119 | %defattr(-,root,root,-) |
---|
120 | %config(noreplace) %{_sysconfdir}/sudoers.d/ctdb |
---|
121 | %config(noreplace) %{_sysconfdir}/sysconfig/ctdb |
---|
122 | %config(noreplace) %{_sysconfdir}/ctdb/notify.sh |
---|
123 | %config(noreplace) %{_sysconfdir}/ctdb/ctdb-crash-cleanup.sh |
---|
124 | %config(noreplace) %{_sysconfdir}/ctdb/debug_locks.sh |
---|
125 | %config(noreplace) %{_sysconfdir}/ctdb/functions |
---|
126 | %config(noreplace) %{_sysconfdir}/ctdb/nfs-rpc-checks.d/* |
---|
127 | %attr(755,root,root) %{initdir}/ctdb |
---|
128 | |
---|
129 | %{_docdir}/ctdb-%{version} |
---|
130 | %dir %{_sysconfdir}/ctdb |
---|
131 | %dir %{_sysconfdir}/ctdb/nfs-rpc-checks.d |
---|
132 | %{_sysconfdir}/ctdb/statd-callout |
---|
133 | %{_sysconfdir}/ctdb/events.d/ |
---|
134 | %{_sysconfdir}/ctdb/debug-hung-script.sh |
---|
135 | %{_sysconfdir}/ctdb/gcore_trace.sh |
---|
136 | %{_sbindir}/ctdbd |
---|
137 | %{_sbindir}/ctdbd_wrapper |
---|
138 | %{_bindir}/ctdb |
---|
139 | %{_bindir}/ctdb_event_helper |
---|
140 | %{_bindir}/ctdb_lock_helper |
---|
141 | %{_bindir}/smnotify |
---|
142 | %{_bindir}/ping_pong |
---|
143 | %{_bindir}/ctdb_diagnostics |
---|
144 | %{_bindir}/onnode |
---|
145 | %{_bindir}/ltdbtool |
---|
146 | %{_mandir}/man1/ctdb.1* |
---|
147 | %{_mandir}/man1/ctdbd.1* |
---|
148 | %{_mandir}/man1/ctdbd_wrapper.1* |
---|
149 | %{_mandir}/man1/onnode.1* |
---|
150 | %{_mandir}/man1/ltdbtool.1* |
---|
151 | %{_mandir}/man1/ping_pong.1* |
---|
152 | %{_mandir}/man5/ctdbd.conf.5* |
---|
153 | %{_mandir}/man7/ctdb-statistics.7* |
---|
154 | %{_mandir}/man7/ctdb-tunables.7* |
---|
155 | %{_mandir}/man7/ctdb.7* |
---|
156 | |
---|
157 | %files devel |
---|
158 | %defattr(-,root,root,-) |
---|
159 | %{_includedir}/ctdb.h |
---|
160 | %{_includedir}/ctdb_client.h |
---|
161 | %{_includedir}/ctdb_protocol.h |
---|
162 | %{_includedir}/ctdb_private.h |
---|
163 | %{_includedir}/ctdb_typesafe_cb.h |
---|
164 | #%{_libdir}/libctdb.a |
---|
165 | %{_libdir}/pkgconfig/ctdb.pc |
---|
166 | |
---|
167 | %changelog |
---|
168 | * Sat Jun 13 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.5.5-1 |
---|
169 | - new upstream release. |
---|
170 | |
---|
171 | * Wed Dec 3 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.5.4-1 |
---|
172 | - new upstream release. |
---|
173 | |
---|
174 | * Tue Aug 19 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.5.3-1 |
---|
175 | - new upstream release. |
---|
176 | |
---|
177 | * Wed Jan 08 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.5-1 |
---|
178 | - new upstream release. |
---|
179 | |
---|
180 | * Tue Oct 08 2013 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.4-1 |
---|
181 | - new upstream release. |
---|
182 | |
---|
183 | * Mon Dec 17 2012 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.0-1 |
---|
184 | - new upstream release. |
---|
185 | - initial build for Vine Linux. |
---|
186 | |
---|
187 | * Mon Jun 27 2011 Michael Schwendt <mschwendt@fedoraproject.org> - 1.2.28-2 |
---|
188 | - Provide virtual -static package to meet guidelines (#700029). |
---|
189 | |
---|
190 | * Mon Apr 18 2011 Sumit Bose <sbose@redhat.com> - 1.2.28-1 |
---|
191 | - Update to ctdb version 1.2.28 |
---|
192 | |
---|
193 | * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.114-2 |
---|
194 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild |
---|
195 | |
---|
196 | * Tue Feb 08 2011 Sumit Bose <sbose@redhat.com> - 1.0.114-1 |
---|
197 | - Changed $RPM_BUILD_ROOT to %{buildroot} |
---|
198 | - Update to ctdb version 1.0.114 |
---|
199 | - Added patch to fix configure issue |
---|
200 | - Added assorted backport patches recommended by upstream developer |
---|
201 | |
---|
202 | * Thu Jan 14 2010 Sumit Bose <sbose@redhat.com> - 1.0.113-1 |
---|
203 | - Update to ctdb version 1.0.113 |
---|
204 | |
---|
205 | * Wed Jan 13 2010 : Version 1.0.113 |
---|
206 | - Incorrect use of dup2() could cause ctdb to spin eating 100% cpu. |
---|
207 | |
---|
208 | * Tue Jan 12 2010 : Version 1.0.112 |
---|
209 | - Revert the use of wbinfo --ping-dc as it is proving too unreliable. |
---|
210 | - Minor testsuite changes. |
---|
211 | |
---|
212 | * Fri Dec 18 2009 : Version 1.0.111 |
---|
213 | - Fix a logging bug when an eventscript is aborted that could cause a crash. |
---|
214 | - Add back cb_status that was lost in a previous commit. |
---|
215 | |
---|
216 | * Fri Dec 18 2009 : Version 1.0.110 |
---|
217 | - Metxe: fix for filedescriptor leak in the new eventscript code. |
---|
218 | - Rusty: fix for a crash bug in the eventscript code. |
---|
219 | |
---|
220 | * Thu Dec 17 2009 : Version 1.0.109 |
---|
221 | - Massive eventscript updates. (bz58828) |
---|
222 | - Nice the daemon instead of using realtime scheduler, also use mlockall() to |
---|
223 | reduce the risk of blockign due to paging. |
---|
224 | - Workarounds for valgrind when forking once for each script. Valgrind |
---|
225 | consumes massive cpu when terminating the scripts on virtual systems. |
---|
226 | - Sync the tdb library with upstream, and use the new TDB_DISALLOW_NESTING |
---|
227 | flag. |
---|
228 | - Add new command "ctdb dumpdbbackup" |
---|
229 | - Start using the new tdb check framework to validate tdb files upon startup. |
---|
230 | - A new framework where we can control health for individual tdb databases. |
---|
231 | - Fix a crash bug in the logging code. |
---|
232 | - New transaction code for persistent databases. |
---|
233 | - Various other smaller fixes. |
---|
234 | |
---|
235 | * Tue Dec 8 2009 Sumit Bose <sbose@redhat.com> - 1.0.108-1 |
---|
236 | - Update to ctdb version 1.0.108 |
---|
237 | - added fix for bz537223 |
---|
238 | - added tdb-tools to Requires, fixes bz526479 |
---|
239 | |
---|
240 | * Wed Dec 2 2009 Sumit Bose <sbose@redhat.com> - 1.0.107-1 |
---|
241 | - Update to ctdb version 1.0.107 |
---|
242 | |
---|
243 | * Wed Dec 2 2009 : Version 1.0.107 |
---|
244 | - fix for rusty to solve a double-free that can happen when there are |
---|
245 | multiple packets queued and the connection is destroyed before |
---|
246 | all packets are processed. |
---|
247 | |
---|
248 | * Tue Dec 1 2009 : Version 1.0.106 |
---|
249 | - Buildscript changes from Michael Adam |
---|
250 | - Dont do a full recovery when there is a mismatch detected for ip addresses, |
---|
251 | just do a less disruptive ip-reallocation |
---|
252 | - When starting ctdbd, wait until all initial recoveries have finished |
---|
253 | before we issue the "startup" event. |
---|
254 | So dont start services or monitoring until the cluster has |
---|
255 | stabilized. |
---|
256 | - Major eventscript overhaul by Ronnie, Rusty and Martins and fixes of a few |
---|
257 | bugs found. |
---|
258 | |
---|
259 | * Thu Nov 19 2009 : Version 1.0.105 |
---|
260 | - Fix a bug where we could SEGV if multiple concurrent "ctdb eventscript ..." |
---|
261 | are used and some of them block. |
---|
262 | - Monitor the daemon from the syslog child process so we shutdown cleanly when |
---|
263 | the main daemon terminates. |
---|
264 | - Add a 500k line ringbuffer in memory where all log messages are stored. |
---|
265 | - Add a "ctdb getlog <level>" command to pull log messages from the in memory |
---|
266 | ringbuffer. |
---|
267 | - From martin : fixes to cifs and nfs autotests |
---|
268 | - from michael a : fix a bashism in 11.natgw |
---|
269 | |
---|
270 | * Fri Nov 6 2009 : Version 1.0.104 |
---|
271 | - Suggestion from Metze, we can now use killtcp to kill local connections |
---|
272 | for nfs so change the killtcp script to kill both directions of an NFS |
---|
273 | connection. |
---|
274 | We used to deliberately only kill one direction in these cases due to |
---|
275 | limitations. |
---|
276 | - Suggestion from christian Ambach, when using natgw, try to avoid using a |
---|
277 | UNHEALTHY node as the natgw master. |
---|
278 | - From Michael Adam: Fix a SEGV bug in the recent change to the eventscripts |
---|
279 | to allow the timeout to apply to each individual script. |
---|
280 | - fix a talloc bug in teh vacuuming code that produced nasty valgrind |
---|
281 | warnings. |
---|
282 | - From Rusty: Set up ulimit to create core files for ctdb, and spawned |
---|
283 | processes by default. This is useful for debugging and testing but can be |
---|
284 | disabled by setting CTDB_SUPRESS_COREFILE=yes in the sysconfig file. |
---|
285 | - Remove the wbinfo -t check from the startup check that winbindd is happy. |
---|
286 | - Enhance the test for bond devices so we also check if the sysadmin have |
---|
287 | disabled all slave devices using "ifdown". |
---|
288 | |
---|
289 | * Tue Nov 3 2009 : Version 1.0.103 |
---|
290 | - Dont use vacuuming on persistent databases |
---|
291 | - Michael A : transaction updates to persistent databases |
---|
292 | - Dont activate service automatically when installing the RPM. Leave this to |
---|
293 | the admin. |
---|
294 | - Create a child process to send all log messages to, to prevent a hung/slow |
---|
295 | syslogd from blocking the main daemon. In this case, discard log messages |
---|
296 | instead and let the child process block. |
---|
297 | - Michael A: updates to log messages |
---|
298 | |
---|
299 | * Thu Oct 29 2009 : Version 1.0.102 |
---|
300 | - Wolfgang: fix for the vacuuming code |
---|
301 | - Wolfgang: stronger tests for persistent database filename tests |
---|
302 | - Improve the log message when we refuse to startup since wbinfo -t fails |
---|
303 | to make it easier to spot in the log. |
---|
304 | - Update the uptime command output and the man page to indicate that |
---|
305 | "time since last ..." if from either the last recovery OR the last failover |
---|
306 | - Michael A: transaction updates |
---|
307 | |
---|
308 | * Wed Oct 28 2009 : Version 1.0.101 |
---|
309 | - create a separate context for non-monitoring events so they dont interfere |
---|
310 | with the monitor event |
---|
311 | - make sure to return status 0 in teh callback when we abort an event |
---|
312 | |
---|
313 | * Wed Oct 28 2009 : Version 1.0.100 |
---|
314 | - Change eventscript handling to allow EventScriptTimeout for each individual |
---|
315 | script instead of for all scripts as a whole. |
---|
316 | - Enhanced logging from the eventscripts, log the name and the duration for |
---|
317 | each script as it finishes. |
---|
318 | - Add a check to use wbinfo -t for the startup event of samba |
---|
319 | - TEMP: allow clients to attach to databases even when teh node is in recovery |
---|
320 | mode |
---|
321 | - dont run the monitor event as frequently after an event has failed |
---|
322 | - DEBUG: in the eventloops, check the local time and warn if the time changes |
---|
323 | backward or rapidly forward |
---|
324 | - From Metze, fix a bug where recovery master becoming unhealthy did not |
---|
325 | trigger an ip failover. |
---|
326 | - Disable the multipath script by default |
---|
327 | - Automatically re-activate the reclock checking if the reclock file is |
---|
328 | specified at runtime. Update manpage to reflect this. |
---|
329 | - Add a mechanism where samba can register a SRVID and if samba unexpectedly |
---|
330 | disconnects, a message will be broadcasted to all other samba daemons. |
---|
331 | - Log the pstree on hung scripts to a file in /tmp isntead of |
---|
332 | /var/log/messages |
---|
333 | - change ban count before unhealthy/banned to 10 |
---|
334 | |
---|
335 | * Thu Oct 22 2009 : Version 1.0.99 |
---|
336 | - Fix a SEGV in the new db priority code. |
---|
337 | - From Wolfgang : eliminate a ctdb_fatal() if there is a dmaster violation |
---|
338 | detected. |
---|
339 | - During testing we often add/delete eventscripts at runtime. This could cause |
---|
340 | an eventscript to fail and mark the node unhealthy if an eventscript was |
---|
341 | deleted while we were listing the names. Handle the errorcode and make sure |
---|
342 | the node does not becomne unhealthy in this case. |
---|
343 | - Lower the debuglevel for the messages when ctdb creates a filedescruiptor so |
---|
344 | we dont spam the logs with these messages. |
---|
345 | - Dont have the RPM automatically restart ctdb |
---|
346 | - Volker : add a missing transaction_cancel() in the handling of persistent |
---|
347 | databases |
---|
348 | - Treat interfaces with the anme ethX* as bond devices in 10.interfaces so we |
---|
349 | do the correct test for if they are up or not. |
---|
350 | |
---|
351 | * Tue Oct 20 2009 : Version 1.0.98 |
---|
352 | - Fix for the vacuuming database from Wolfgang M |
---|
353 | - Create a directory where the test framework can put temporary overrides |
---|
354 | to variables and functions. |
---|
355 | - Wait a lot longer before shutting down the node when the reclock file |
---|
356 | is incorrectly configured, and log where it is configured. |
---|
357 | - Try to avoid running the "monitor" event when databases are frozen. |
---|
358 | - Add logging for every time we create a filedescriptor so we can trap |
---|
359 | fd leaks. |
---|
360 | |
---|
361 | * Wed Oct 14 2009 : Version 1.0.97 |
---|
362 | - From martins : update onnode. |
---|
363 | Update onnode to allow specifying an alternative nodes file from |
---|
364 | the command line and also to be able to specify hostnames on the |
---|
365 | list of targets : |
---|
366 | onnode host1,host2,... |
---|
367 | * Wed Oct 14 2009 Sumit Bose <sbose@redhat.com> - 1.0.96-1 |
---|
368 | - Update to ctdb version 1.0.96 |
---|
369 | |
---|
370 | * Tue Oct 13 2009 : Version 1.0.96 |
---|
371 | - Add more debugging output when eventscripts have trouble. Print a |
---|
372 | "pstree -p" to the log when scripts have hung. |
---|
373 | - Update the initscript, only print the "No reclock file used" warning |
---|
374 | when we do "service ctdb start", dont also print them for all other |
---|
375 | actions. |
---|
376 | - When changing between unhealthy/healthy state, push a request to the |
---|
377 | recovery master to perform an ip reallocation instead of waiting for the |
---|
378 | recovery master to pull and check the state change. |
---|
379 | - Fix a bug in the new db-priority handling where a pre-.95 recovery master |
---|
380 | could no longer lock the databases on a post-.95 daemon. |
---|
381 | - Always create the nfs state directories during the "monitor" event. |
---|
382 | This makes it easier to configure and enable nfs at runtime. |
---|
383 | - From Volker, forward-port a simper deadlock avoiding patch from the 1.0.82 |
---|
384 | branch. This is a simpler versionof the "db priority lock order" patch |
---|
385 | that went into 1.0.95, and will be kept for a few versions until samba |
---|
386 | has been updated to use the functionality from 1.0.95. |
---|
387 | |
---|
388 | * Mon Oct 12 2009 : Version 1.0.95 |
---|
389 | - Add database priorities. Allow samba to set the priority of databases |
---|
390 | and lock the databases in priority order during recovery |
---|
391 | to avoid a deadlock when samba locks one database then blocks indefinitely |
---|
392 | while waiting for the second databaso to become locked. |
---|
393 | - Be aggressive and ban nodes where the recovery transaction start call |
---|
394 | fails. |
---|
395 | |
---|
396 | * Sat Oct 10 2009 : Version 1.0.94 |
---|
397 | - Be very aggressive and quickly ban nodes that can not freeze their databases |
---|
398 | |
---|
399 | * Thu Oct 8 2009 : Version 1.0.93 |
---|
400 | - When adding an ip, make sure to update this assignment on all nodes |
---|
401 | so it wont show up as -1 on other nodes. |
---|
402 | - When adding an ip and immediately deleting it, it was possible that |
---|
403 | the daemon would crash accessing already freed memory. |
---|
404 | Readjust the memory hierarchy so the destructors are called in the right |
---|
405 | order. |
---|
406 | - Add a handshake to the recovery daemon to eliminate some rare cases where |
---|
407 | addip/delip might cause a recovery to occur. |
---|
408 | - updated onnode documenation from Martin S |
---|
409 | - Updates to the natgw eventscript to allow disabling natgw at runtime |
---|
410 | |
---|
411 | * Fri Oct 2 2009 : Version 1.0.92 |
---|
412 | - Test updates and merge from martin |
---|
413 | - Add notification for "startup" |
---|
414 | - Add documentation for notification |
---|
415 | - from martin, a fix for restarting vsftpd in the eventscript |
---|
416 | |
---|
417 | * Tue Sep 29 2009 Sumit Bose <sbose@redhat.com> - 1.0.91-1 |
---|
418 | - Update to ctdb version 1.0.91 |
---|
419 | |
---|
420 | * Tue Sep 29 2009 : Version 1.0.91 |
---|
421 | - New vacuum and repack design from Wolgang Mueller. |
---|
422 | - Add a new eventscript 01.reclock that will first mark a node unhealthy and |
---|
423 | later ban the node if the reclock file can not be accessed. |
---|
424 | - Add machinereadable output to the ctdb getreclock command |
---|
425 | - merge transaction updates from Michael Adam |
---|
426 | - In the new banning code, reset the culprit count to 0 for all nodes that |
---|
427 | could successfully compelte a full recovery. |
---|
428 | - dont mark the recovery master as a ban culprit because a node in the cluster |
---|
429 | needs a recovery. this happens naturally when using ctdb recover command so |
---|
430 | dont make this cause a node to be banned. |
---|
431 | |
---|
432 | * Wed Sep 23 2009 Sumit Bose <sbose@redhat.com> - 1.0.90-1 |
---|
433 | - Update to ctdb version 1.0.90 |
---|
434 | |
---|
435 | * Sat Sep 12 2009 : Version 1.0.90 |
---|
436 | - Be more forgiving for eventscripts that hang during startup |
---|
437 | - Fix for a banning bug in the new banning logic |
---|
438 | |
---|
439 | * Thu Sep 3 2009 : Version 1.0.89 |
---|
440 | - Make it possible to manage winbind independently of samba. |
---|
441 | - Add new prototype banning code |
---|
442 | - Overwrite the vsftpd state file instead of appending. This eliminates |
---|
443 | annoying errors in the log. |
---|
444 | - Redirect some iptables commands to dev null |
---|
445 | - From Michael A, explicitely set the broadcast when we takeover a public ip |
---|
446 | - Remove a reclock file check we no longer need |
---|
447 | - Skip any persistent database files ending in .bak |
---|
448 | |
---|
449 | * Mon Aug 17 2009 Sumit Bose <sbose@redhat.com> - 1.0.88-1 |
---|
450 | - Update to ctdb version 1.0.88 |
---|
451 | |
---|
452 | * Mon Aug 17 2009 : Version 1.0.88 |
---|
453 | - Add a new state for eventscripts : DISABLED. |
---|
454 | Add two new commands "ctdb enablescript/disablescript" to enable/disable |
---|
455 | eventscripts at runtime. |
---|
456 | - Bugfixes for TDB from rusty. |
---|
457 | - Merge/Port changes from upstream TDB library by rusty. |
---|
458 | - Additional new tests from MartinS. Tests for stop/continue. |
---|
459 | - Initial patch to rework vacuuming/repacking process from Wolfgang Mueller. |
---|
460 | - Updates from Michael Adam for persistent writes. |
---|
461 | - Updates from MartinS to handle the new STOPPED bit in the test framework. |
---|
462 | - Make it possible to enable/disable the RECMASTER and LMASTER roles |
---|
463 | at runtime. Add two new commands |
---|
464 | "ctdb setlmasterrole/setrecmasterrole on/off" |
---|
465 | - Make it possible to enable/disable the natgw feature at runtime. Add |
---|
466 | the command "ctdb setnatgwstate on/off" |
---|
467 | |
---|
468 | * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.87-2 |
---|
469 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild |
---|
470 | |
---|
471 | * Fri Jul 17 2009 Sumit Bose <sbose@redhat.com> - 1.0.87-1 |
---|
472 | - Update to ctdb version 1.0.87 |
---|
473 | |
---|
474 | * Fri Jul 17 2009 : Version 1.0.87 |
---|
475 | - Add a new event "stopped" that is called when a node is stopped. |
---|
476 | - Documentation of the STOPPED flag and the stop/continue commands |
---|
477 | - Make it possible to start a node in STOPPED mode. |
---|
478 | - Add a new node flag : STOPPED and commands "ctdb stop" "ctdb continue" |
---|
479 | These commands are similar to "diasble/enable" but will also remove the node |
---|
480 | from the vnnmap, while disable only fails all ip addresses over. |
---|
481 | - tests for NFS , CIFS by martins |
---|
482 | - major updates to the init script by martins |
---|
483 | - Send gratious arps with a 1.1 second stride instead of a 1 second stride to |
---|
484 | workaround interesting "features" of common linux stacks. |
---|
485 | - Various test enhancements from martins: |
---|
486 | - additional other tests |
---|
487 | - add tests for grat arp generation, ping during failover, ssh and failover |
---|
488 | - New/updated tcp tickle tests and supprot functions |
---|
489 | - provide better debugging when a test fails |
---|
490 | - make ctdbd restarts more reliable in the tests |
---|
491 | - update the "wait bar" to make the wait progress in tests more obvious |
---|
492 | - various cleanups |
---|
493 | - when dispatching a message to a handler, make the message a real talloc |
---|
494 | object so that we can reparent the object in the tallic hierarchy. |
---|
495 | - document the ipreallocate command |
---|
496 | - Updates to enable/disable to use the ipreallocate command to block until the |
---|
497 | following ipreallocation has completed. |
---|
498 | - Update the main daemon and the tools to allow debug level to be a string |
---|
499 | instead of an integer. |
---|
500 | - Update the sysconfig file to show using string literals instead of numeric |
---|
501 | values for the debuglevels used. |
---|
502 | - If no debuglevel is specific, make "ctdb setdebug" show the available |
---|
503 | options. |
---|
504 | - When trying to allocate network packets, add explicit checks if the network |
---|
505 | transport has been shutdown before trying and failing, to make log messages |
---|
506 | easier to read. Add this extra check and logging to every plave packets are |
---|
507 | allocated. |
---|
508 | |
---|
509 | * Wed Jul 1 2009 Sumit Bose <sbose@redhat.com> - 1.0.86-1 |
---|
510 | - Update to ctdb version 1.0.86 |
---|
511 | |
---|
512 | * Tue Jun 30 2009 : Version 1.0.86 |
---|
513 | - Do not access the reclock at all if VerifyRecoveryLock is zero, not even try |
---|
514 | to probe it. |
---|
515 | - Allow setting the reclock file as "", which means that no reclock file at |
---|
516 | all should be used. |
---|
517 | - Document that a reclock file is no longer required, but that it is |
---|
518 | dangerous. |
---|
519 | - Add a control that can be used to set/clear/change the reclock file in the |
---|
520 | daemon during runtime. |
---|
521 | - Update the recovery daemon to poll whether a reclock file should be sued and |
---|
522 | if so which file at runtime in each monitoring cycle. |
---|
523 | - Automatically disable VerifyRecoveryLock everytime a user changes the |
---|
524 | location of the reclock file. |
---|
525 | - do not allow the VerifyRecoveryLock to be set using ctdb setvar if there is |
---|
526 | no recovery lock file specified. |
---|
527 | - Add two commands "ctdb getreclock" and "ctdb setreclock" to modify the |
---|
528 | reclock file. |
---|
529 | |
---|
530 | * Tue Jun 23 2009 : Version 1.0.85 |
---|
531 | - From William Jojo : Dont use getopt on AIX |
---|
532 | - Make it possible to use "ctdb listnodes" also when the daemon is not running |
---|
533 | - Provide machinereadable output to "ctdb listnodes" |
---|
534 | - Dont list DELETED nodes in the ctdb listnodes output |
---|
535 | - Try to avoid causing a recovery for the average case when |
---|
536 | adding/deleting/moving an ip |
---|
537 | - When banning a node, drop the IPs on that node only and not all nodes. |
---|
538 | - Add tests for NFS and CIFS tickles |
---|
539 | - Rename 99.routing to 11.routing so it executes before NFS and LVS scripts |
---|
540 | - Increase the default timeout before we deem an unresponsive recovery daemon |
---|
541 | hung and shutdown |
---|
542 | - Reduce the reclock timout to 5 seconds |
---|
543 | - Spawn a child process in the recovery daemon ot check the reclock file to |
---|
544 | avoid blocking the process if the underlying filesystem is unresponsive |
---|
545 | - fix for filedescriptor leak when a child process timesout |
---|
546 | - Dont log errors if waitpid() returns -1 |
---|
547 | - Onnode updates by Martins |
---|
548 | - Test and initscript cleanups from Martin S |
---|
549 | |
---|
550 | * Fri Jun 5 2009 Sumit Bose <sbose@redhat.com> - 1.0.84-1 |
---|
551 | - Update to ctdb version 1.0.84 |
---|
552 | |
---|
553 | * Tue Jun 2 2009 : Version 1.0.84 |
---|
554 | - Fix a bug in onnode that could not handle dead nodes |
---|
555 | |
---|
556 | * Tue Jun 2 2009 : Version 1.0.83 |
---|
557 | - Document how to remove a ndoe from a running cluster. |
---|
558 | - Hide all deleted nodes from ctdb output. |
---|
559 | - Lower the loglevel on some eventscript related items |
---|
560 | - Dont queue packets to deleted nodes |
---|
561 | - When building initial vnnmap, ignode any nonexisting nodes |
---|
562 | - Add a new nodestate : DELETED that is used when deleting a node from an |
---|
563 | existing cluster. |
---|
564 | - dont remove the ctdb socket when shutting down. This prevents a race in the |
---|
565 | initscripts when restarting ctdb quickly after stopping it. |
---|
566 | - TDB nesting reworked. |
---|
567 | - Remove obsolete ipmux |
---|
568 | - From Flavio Carmo Junior: Add eventscript and documentation for ClamAV |
---|
569 | antivirus engine |
---|
570 | - From Sumit Bose: fix the regex in the test to handle the new ctdb |
---|
571 | statistics output that was recently added. |
---|
572 | - change the socket type we use for grauitious arps from the obsolete |
---|
573 | AF_INET/SOCK_PACKET to instead use PF_PACKET/SOCK_RAW. |
---|
574 | - Check return codes for some functions, from Sumit Bose, based on codereview |
---|
575 | by Jim Meyering. |
---|
576 | - Sumit Bose: Remove structure memeber node_list_file that is no longer used. |
---|
577 | - Sumit Bose: fix configure warning for netfilter.h |
---|
578 | - Updates to the webpages by Volker. |
---|
579 | - Remove error messages about missing /var/log/log.ctdb file from |
---|
580 | ctdb_diagnostics.sh from christian Ambach |
---|
581 | - Additional error logs if hte eventscript switching from dameon to client |
---|
582 | mode fails. |
---|
583 | - track how long it takes for ctdbd and the recovery daemon to perform the |
---|
584 | rec-lock fcntl() lock attemt and show this in the ctdb statistics output. |
---|
585 | |
---|
586 | * Thu May 14 2009 Sumit Bose <sbose@redhat.com> - 1.0.82-1 |
---|
587 | - Update to ctdb version 1.0.82 |
---|
588 | |
---|
589 | * Thu May 14 2009 : Version 1.0.82 |
---|
590 | - Update the "ctdb lvsmaster" command to return -1 on error. |
---|
591 | - Add a -Y flag to "ctdb lvsmaster" |
---|
592 | - RHEL5 apache leaks semaphores when crashing. Add semaphore cleanup to the |
---|
593 | 41.httpd eventscript and try to restart apache when it has crashed. |
---|
594 | - Fixes to some tests |
---|
595 | - Add a -o option to "onnode" which will redirect all stdout to a file for |
---|
596 | each of the nodes. |
---|
597 | - Add a natgw and a lvs node specifier to onnode so that we can use |
---|
598 | "onnode natgw ..." |
---|
599 | - Assign the natgw address to lo instead of the private network so it can also |
---|
600 | be used where private and public networks are the same. |
---|
601 | - Add GPL boilerplates to two missing scripts. |
---|
602 | - Change the natgw prefix NATGW_ to CTDB_NATGW_ |
---|
603 | |
---|
604 | * Fri May 8 2009 Sumit Bose <sbose@redhat.com> - 1.0.81-1 |
---|
605 | - Update to ctdb version 1.0.81 |
---|
606 | |
---|
607 | * Fri May 8 2009 : Version 1.0.81 |
---|
608 | - use smbstatus -np instead of smbstatus -n in the 50.samba eventscript |
---|
609 | since this avoids performing an expensive traverse on the locking and brlock |
---|
610 | databases. |
---|
611 | - make ctdb automatically terminate all traverse child processes clusterwide |
---|
612 | associated to a client application that terminates before the traversal is |
---|
613 | completed. |
---|
614 | - From Sumit Bose : fixes to AC_INIT handling. |
---|
615 | - From Michael Adam, add Tridge's "ping_pong" tool the the ctdb distro since |
---|
616 | this is very useful for testing the backend filesystem. |
---|
617 | - From Sumit bose, add support for additional 64 bit platforms. |
---|
618 | - Add a link from the webpage to Michael Adams SambaXP paper on CTDB. |
---|
619 | |
---|
620 | * Fri May 1 2009 : Version 1.0.80 |
---|
621 | - change init shutdown level to 01 for ctdb so it stops before any of the |
---|
622 | other services |
---|
623 | - if we can not pull a database from a remote node during recovery, mark that |
---|
624 | node as a culprit so it becomes banned |
---|
625 | - increase the loglevel when we volunteer to drop all ip addresses after |
---|
626 | beeing in recovery mode for too long. Make this timeout tuneable with |
---|
627 | "RecoveryDropAllIPs" and have it default to 60 seconds |
---|
628 | - Add a new flag TDB_NO_NESTING to the tdb layer to prevent nested |
---|
629 | transactions which ctdb does not use and does not expect. Have ctdb set this |
---|
630 | flag to prevent nested transactions from occuring. |
---|
631 | - dont unconditionally kill off ctdb and restrat it on "service ctdb start". |
---|
632 | Fail "service ctdb start" with an error if ctdb is already running. |
---|
633 | - Add a new tunable "VerifyRecoveryLock" that can be set to 0 to prevent the |
---|
634 | main ctdb daemon to verify that the recovery master has locked the reclock |
---|
635 | file correctly before allowing it to set the recovery mode to active. |
---|
636 | - fix a cosmetic bug with ctdb statistics where certain counters could become |
---|
637 | negative. |
---|
638 | |
---|
639 | * Thu Apr 30 2009 Sumit Bose <sbose@redhat.com> - 1.0.79-2 |
---|
640 | - fixed a ppc64 build issue |
---|
641 | |
---|
642 | * Wed Apr 29 2009 Sumit Bose <sbose@redhat.com> - 1.0.79-1 |
---|
643 | - Update to ctdb version 1.0.79 |
---|
644 | |
---|
645 | * Wed Apr 8 2009 : Version 1.0.79 |
---|
646 | - From Mathieu Parent: add a ctdb pkgconfig file |
---|
647 | - Fix bug 6250 |
---|
648 | - add a funciton remove_ip to safely remove an ip from an interface, taking |
---|
649 | care to workaround an issue with linux alias interfaces. |
---|
650 | - Update the natgw eventscript to use the safe remove_ip() function |
---|
651 | - fix a bug in the eventscript child process that would cause the socket to be |
---|
652 | removed. |
---|
653 | - dont verify nodemap on banned nodes during cluster monitoring |
---|
654 | - Update the dodgy SeqnumInterval to have ms resolution |
---|
655 | |
---|
656 | * Tue Mar 31 2009 : Version 1.0.78 |
---|
657 | - Add a notify mechanism so we can send snmptraps/email to external management |
---|
658 | systems when the node becomes unhealthy |
---|
659 | - include 11.natgw eventscript in thew install so that the NATGW feature works |
---|
660 | |
---|
661 | * Tue Mar 31 2009 : Version 1.0.77 |
---|
662 | - Update the 99.routing eventscript to also try to add the routes (back) |
---|
663 | during a releaseip event. Similar to the reasons why we must add addresses |
---|
664 | back during releaseip in 10.interfaces |
---|
665 | |
---|
666 | * Tue Mar 24 2009 : Version 1.0.76 |
---|
667 | - Add a debugging command "xpnn" which can print the pnn of the node even when |
---|
668 | ctdbd is not running. |
---|
669 | - Redo the NATGW implementation to allow multiple disjoing NATGW groups in the |
---|
670 | same cluster. |
---|
671 | |
---|
672 | * Tue Mar 24 2009 : Version 1.0.75 |
---|
673 | - Various updates to LVS |
---|
674 | - Fix a bug in the killtcp control where we did not set the port correctly |
---|
675 | - add a new "ctdb scriptstatus" command that shows the status of the |
---|
676 | eventrscripts. |
---|
677 | |
---|
678 | * Mon Mar 16 2009 : Version 1.0.74 |
---|
679 | - Fixes to AIX from C Cowan. |
---|
680 | - Fixes to ctdb_diagnostics so we collect correct GPFS data |
---|
681 | - Fixes to the net conf list command in ctdb_diagnostics |
---|
682 | - Check the static-routes file IFF it exists in ctdb_diagnostics |
---|
683 | |
---|
684 | * Thu Mar 05 2009 Sumit Bose <sbose@redhat.com> - 1.0.73-1 |
---|
685 | - Update to ctdb version 1.0.73 |
---|
686 | |
---|
687 | * Wed Mar 4 2009 : Version 1.0.73 |
---|
688 | - Add possibility to disable the check of shares for NFS and Samba |
---|
689 | - From Sumit Bose, fix dependencies so make -j works |
---|
690 | |
---|
691 | * Tue Feb 24 2009 Sumit Bose <sbose@redhat.com> - 1.0.72-3 |
---|
692 | - fix a make -j dependency problem |
---|
693 | |
---|
694 | * Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.72-2 |
---|
695 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild |
---|
696 | |
---|
697 | * Wed Feb 18 2009 Sumit Bose <sbose@redhat.com> - 1.0.72-1 |
---|
698 | - Update to ctdb version 1.0.72 |
---|
699 | |
---|
700 | * Wed Feb 18 2009 : Version 1.0.72 |
---|
701 | - Updates to test scripts by martin s |
---|
702 | - Adding a COPYING file |
---|
703 | - Use netstat to check for services and ports and fallback to netcat |
---|
704 | only if netstat is unavailable. |
---|
705 | |
---|
706 | * Tue Feb 17 2009 Sumit Bose <sbose@redhat.com> - 1.0.71-5 |
---|
707 | - more fixed according to https://bugzilla.redhat.com/show_bug.cgi?id=459444 |
---|
708 | |
---|
709 | * Sun Feb 8 2009 Sumit Bose <sbose@redhat.com> - 1.0.71-4 |
---|
710 | - added upstream patch with license file |
---|
711 | |
---|
712 | * Fri Feb 6 2009 Sumit Bose <sbose@redhat.com> - 1.0.71-3 |
---|
713 | - fixed package according to https://bugzilla.redhat.com/show_bug.cgi?id=459444 |
---|
714 | |
---|
715 | * Thu Feb 5 2009 Guenther Deschner <gdeschner@redhat.com> - 1.0.71-2 |
---|
716 | - Update to ctdb version 1.0.71 |
---|
717 | |
---|
718 | * Sun Feb 01 2009 : Version 1.0.71 |
---|
719 | - Additional ipv6 fixes from Michael Adams |
---|
720 | |
---|
721 | * Thu Jan 15 2009 : Version 1.0.70 |
---|
722 | - IPv6 support is completed. this is backward compatible with ipv4-only |
---|
723 | systems. To use IPv6 with samba and ctdb you need current GIT of samba 3.3 |
---|
724 | or michael adams samba-ctdeb branch. |
---|
725 | - Many enhancements to the build system and scripts to make it more SUSE |
---|
726 | friendly by Michael Adams. |
---|
727 | - Change of how the naming of the package is structured. We are now |
---|
728 | using "1.0.70" as a release and "-1" as the revision instead of as |
---|
729 | previously using "1.0" as release and ".70" as the revision. |
---|
730 | By Michael Adams. |
---|
731 | |
---|
732 | * Wed Dec 17 2008 : Version 1.0.69 |
---|
733 | - Various fixes to scripts by M Adam |
---|
734 | - Dont call ctdb_fatal() when the transport is down during shutdown |
---|
735 | |
---|
736 | * Thu Dec 11 2008 : Version 1.0.68 |
---|
737 | - Fixes for monitoring of interfaces status from Michael Adam. |
---|
738 | - Use -q instead of >/dev/null for grep to enhance readability of the |
---|
739 | scripts from Michael Adam. |
---|
740 | - Update to the "ctdb recover" command. This command now block until the |
---|
741 | has completed. This makes it much easier to use in scripts and avoids |
---|
742 | the common workaround : |
---|
743 | ctdb recover |
---|
744 | ... loop while waiting for recovery completes ... |
---|
745 | continue ... |
---|
746 | - Add a CTDB_TIMEOUT variable. If set, this variable provides an automatic |
---|
747 | timeout for "ctdb <command>", similar to using -T <timeout> |
---|
748 | - Set a unique errorcode for "ctdb <command>" when it terminates due to a |
---|
749 | timeout so that scripts can distinguish between a hung command and what was |
---|
750 | just a failure. |
---|
751 | - Update "ctdb ban/unban" so that if the cluster is in recovery these commands |
---|
752 | blocks and waits until after recovery is complete before the perform the |
---|
753 | ban/unban operation. This is necessary since the recovery process can cause |
---|
754 | nodes to become automatically unbanned. |
---|
755 | - Update "ctdb ban/unban" to block until the recovery that will follow shortly |
---|
756 | after this command has completed. |
---|
757 | This makes it much easier to use in scripts and avoids the common |
---|
758 | workaround : |
---|
759 | ctdb ban/unban |
---|
760 | ... loop while waiting for recovery completes ... |
---|
761 | continue ... |
---|
762 | - Bugfix for the new flags handling in 1.0.67. Abort and restart monitoring |
---|
763 | if we failed to get proper nodemaps from a remote node instead of |
---|
764 | dereferencing a null pointer. |
---|
765 | - If ctdbd was explicitely started with the '--socket' argument, make |
---|
766 | ctdbd automatically set CTDB_SOCKET to the specified argument. |
---|
767 | This ensures that eventscripts spawned by the ctdb daemon will default to |
---|
768 | using the same socket and talk to the correct daemon. |
---|
769 | This primarily affects running multiple daemons on the same host and where |
---|
770 | you want each instance of ctdb daemons have their eventscripts talk to the |
---|
771 | "correct" daemon. |
---|
772 | - Update "ctdb ping" to return an error code if the ping fail so that it |
---|
773 | can be used in scripts. |
---|
774 | - Update to how to synchronize management of node flags across the cluster. |
---|
775 | |
---|
776 | * Tue Dec 02 2008 : Version 1.0.67 |
---|
777 | - Add a document describing the recovery process. |
---|
778 | - Fix a bug in "ctdb setdebug" where it would refuse to set a negative |
---|
779 | debug level. |
---|
780 | - Print the list of literals for debug names if an invalid one was given |
---|
781 | to "ctdb setdebug" |
---|
782 | - Redesign how "ctdb reloadnodes" works and reduce the amont of tcp teardowns |
---|
783 | used during this event. |
---|
784 | - Make it possible to delete a public ip from all nodes at once using |
---|
785 | "ctdb delip -n all" |
---|
786 | |
---|
787 | * Sun Nov 23 2008 : Version 1.0.66 |
---|
788 | - Allow to change the recmaster even when we are not frozen. |
---|
789 | - Remove two redundant SAMBA_CHECK variables from the sysconf example |
---|
790 | - After a node failure it can take very long before some lock operations |
---|
791 | ctdb needs to perform are allowed/works with gpfs again. Workaround this |
---|
792 | by treating a hang/timeout as success. |
---|
793 | - Dont override CTDB_BASE is fet in the shell already |
---|
794 | - Always send keepalive packets regardless of whether the link is idle or not. |
---|
795 | - Rewrite the disable/enable flag update logic to prevent a race between |
---|
796 | "ctdb disable/enable" and the recovery daemon when updating the flags to |
---|
797 | all nodes. |
---|
798 | |
---|
799 | * Wed Nov 12 2008 : Version 1.0.65 |
---|
800 | - Update the sysconfig example: The default debug level is 2 (NOTICE) and not |
---|
801 | 0 (ERROR) |
---|
802 | - Add support for a CTDB_SOCKET environment variable for the ctdb command |
---|
803 | line tool. If set, this overrides the default socket the ctdb tool will |
---|
804 | use. |
---|
805 | - Add logging of high latency operations. |
---|
806 | |
---|
807 | * Tue Oct 21 2008 : Version 1.0.64 |
---|
808 | - Add a context and a timed event so that once we have been in recovery for |
---|
809 | too long we drop all public addresses. |
---|
810 | |
---|
811 | * Sun Oct 19 2008 : Version 1.0.63 |
---|
812 | - Remove logging of "periodic cleanup ..." in 50.samba |
---|
813 | - When we reload a nodes file, we must detect this and reload the file also |
---|
814 | in the recovery daemon before we try to dereference somethoung beyond the end |
---|
815 | of the nodes array. |
---|
816 | |
---|
817 | * Wed Oct 15 2008 : Version 1.0.62 |
---|
818 | - Allow multiple eventscritps using the same prefix number. |
---|
819 | It is undefined which order scripts with the same prefix will execute in. |
---|
820 | |
---|
821 | * Tue Oct 14 2008 : Version 1.0.61 |
---|
822 | - Use "route add -net" instead of "ip route add" when adding routes in 99.routing |
---|
823 | - lower the loglevel os several debug statements |
---|
824 | - check the status returned from ctdb_ctrl_get_tickles() before we try to |
---|
825 | print them out to the screen. |
---|
826 | - install a new eventscript 20.multipathd whoich can be used to monitor that |
---|
827 | multipath devices are healthy |
---|
828 | |
---|
829 | * Tue Oct 14 2008 : Version 1.0.60 |
---|
830 | - Verify that nodes we try to ban/unban are reachable and print an error othervise. |
---|
831 | - Update the client and server sides of TAKEIP/RELEASEIP/GETPUBLICIPS and |
---|
832 | GETNODEMAP to fall back to the old style ipv4-only controls if the new |
---|
833 | ipv4/ipv6 controls fail. This allows an ipv4/v6 enabled ctdb daemon to |
---|
834 | interoperate with earlier ipv4-only versions of the daemons. |
---|
835 | - From Mathieu Parent : log debian systems log the package versions in ctdb |
---|
836 | diagnostics |
---|
837 | - From Mathieu Parent : specify logdir location for debian (this patch was |
---|
838 | later reversed) |
---|
839 | - From Michael Adams : allow # comments in nodes/public_addresses files |
---|
840 | |
---|
841 | * Mon Oct 06 2008 : Version 1.0.59 |
---|
842 | - Updated "reloadnodes" logic. Instead of bouncing the entire tcp layer it is |
---|
843 | sufficient to just close and reopen all outgoing tcp connections. |
---|
844 | - New eventscript 99.routing which can be used to re-attach routes to public |
---|
845 | interfaces after a takeip event. (routes may be deleted by the kernel when we |
---|
846 | release an ip) |
---|
847 | - IDR tree fix from Jim Houston |
---|
848 | - Better handling of critical events if the local clock is suddenly changed |
---|
849 | forward by a lot. |
---|
850 | - Fix three slow memory leaks in the recovery daemon |
---|
851 | - New ctdb command : ctdb recmaster which prints the pnn of the recmaster |
---|
852 | - Onnode enhancements from Martin S : "healthy" and "connected" are now |
---|
853 | possible nodespecifiers |
---|
854 | - From Martin S : doc fixes |
---|
855 | - lowering some debug levels for some nonvital informational messages |
---|
856 | - Make the daemon daemon monitoring stronger and allow ctdbd to detect a hung |
---|
857 | recovery daemon. |
---|
858 | - From C Cowan : patches to compile ipv6 under AIX |
---|
859 | - zero out some structs to keep valgrind happy |
---|
860 | |
---|
861 | * Mon Sep 8 2008 Abhijith Das <adas@redhat.com> - 1.0.58-1 |
---|
862 | - This release repackages upstream's version 1.0.58 for fedora |
---|
863 | |
---|
864 | * Wed Aug 27 2008 : Version 1.0.58 |
---|
865 | - revert the name change tcp_tcp_client back to tcp_control_tcp so |
---|
866 | samba can build. |
---|
867 | - Updates to the init script from Abhijith Das <adas@redhat.com> |
---|
868 | |
---|
869 | * Mon Aug 25 2008 : Version 1.0.57 |
---|
870 | - initial support for IPv6 |
---|
871 | |
---|
872 | * Mon Aug 11 2008 : Version 1.0.56 |
---|
873 | - fix a memory leak in the recovery daemon. |
---|
874 | |
---|
875 | * Mon Aug 11 2008 : Version 1.0.55 |
---|
876 | - Fix the releaseip message we seond to samba. |
---|
877 | |
---|
878 | * Fri Aug 8 2008 : Version 1.0.54 |
---|
879 | - fix a looping error in the transaction code |
---|
880 | - provide a more detailed error code for persistent store errors |
---|
881 | so clients can make more intelligent choices on how to try to recover |
---|
882 | |
---|
883 | * Thu Aug 7 2008 : Version 1.0.53 |
---|
884 | - Remove the reclock.pnn file it can cause gpfs to fail to umount |
---|
885 | - New transaction code |
---|
886 | |
---|
887 | * Mon Aug 4 2008 : Version 1.0.52 |
---|
888 | - Send an explicit gratious arp when starting sending the tcp tickles. |
---|
889 | - When doing failover, issue a killtcp to non-NFS/non-CIFS clients |
---|
890 | so that they fail quickly. NFS and CIFS already fail and recover |
---|
891 | quickly. |
---|
892 | - Update the test scripts to handle CTRL-C to kill off the test. |
---|
893 | |
---|
894 | * Mon Jul 28 2008 : Version 1.0.51 |
---|
895 | - Strip off the vlan tag from bond devices before we check in /proc |
---|
896 | if the interface is up or not. |
---|
897 | - Use testparm in the background in the scripts to allow probing |
---|
898 | that the shares do exist. |
---|
899 | - Fix a bug in the logging code to handle multiline entries better |
---|
900 | - Rename private elements from private to private_data |
---|
901 | |
---|
902 | * Fri Jul 18 2008 : Version 1.0.50 |
---|
903 | - Dont assume that just because we can establish a TCP connection |
---|
904 | that we are actually talking to a functioning ctdb daemon. |
---|
905 | So dont mark the node as CONNECTED just because the tcp handshake |
---|
906 | was successful. |
---|
907 | - Dont try to set the recmaster to ourself during elections for those |
---|
908 | cases we know this will fail. To remove some annoying benign but scary |
---|
909 | looking entries from the log. |
---|
910 | - Bugfix for eventsystem for signal handling that could cause a node to |
---|
911 | hang. |
---|
912 | |
---|
913 | * Thu Jul 17 2008 : Version 1.0.49 |
---|
914 | - Update the safe persistent update fix to work with unpatched samba |
---|
915 | servers. |
---|
916 | |
---|
917 | * Thu Jul 17 2008 : Version 1.0.48 |
---|
918 | - Update the spec file. |
---|
919 | - Do not start new user-triggered eventscripts if we are already |
---|
920 | inside recovery mode. |
---|
921 | - Add two new controls to start/cancel a persistent update. |
---|
922 | A client such as samba can use these to tell ctdbd that it will soon |
---|
923 | be writing directly to the persistent database tdb file. So if |
---|
924 | samba is -9ed before it has eitehr done the persistent_store or |
---|
925 | canceled the operation, ctdb knows that the persistent databases |
---|
926 | 'may' be out of sync and therefore a full blown recovery is called for. |
---|
927 | - Add two new options : |
---|
928 | CTDB_SAMBA_SKIP_CONF_CHECK and CTDB_SAMBA_CHECK_PORTS that can be used |
---|
929 | to override what checks to do when monitoring samba health. |
---|
930 | We can no longer use the smbstatus, net or testparm commands to check |
---|
931 | if samba or its config is healthy since these commands may block |
---|
932 | indefinitely and thus can not be used in scripts. |
---|
933 | |
---|
934 | * Fri Jul 11 2008 : Version 1.0.47 |
---|
935 | - Fix a double free bug where if a user striggered (ctdb eventscript) |
---|
936 | hung and while the timeout handler was being processed a new user |
---|
937 | triggered eventscript was started we would free state twice. |
---|
938 | - Rewrite of onnode and associated documentation. |
---|
939 | |
---|
940 | * Thu Jul 10 2008 : Version 1.0.46 |
---|
941 | - Document both the LVS:cingle-ip-address and the REMOTE-NODE:wan-accelerator |
---|
942 | capabilities. |
---|
943 | - Add commands "ctdb pnn", "ctdb lvs", "ctdb lvsmaster". |
---|
944 | - LVS improvements. LVS is the single-ip-address mode for a ctdb cluster. |
---|
945 | - Fixes to supress rpmlint warnings |
---|
946 | - AXI compile fixes. |
---|
947 | - Change \s to [[:space:]] in some scripts. Not all RHEL5 packages come |
---|
948 | with a egrep that handles \s even same version but different arch. |
---|
949 | - Revert the change to NFS restart. CTDB should NOT attempt to restart |
---|
950 | failed services. |
---|
951 | - Rewrite of the waitpid() patch to use the eventsystem for handling |
---|
952 | signals. |
---|
953 | |
---|
954 | * Tue Jul 8 2008 : Version 1.0.45 |
---|
955 | - Try to restart the nfs service if it has failed to respond 3 times in a row. |
---|
956 | - waitpid() can block if the child does not respond promptly to SIGTERM. |
---|
957 | ignore all SIGCHILD signals by setting SIGCHLD to SIG_DEF. |
---|
958 | get rid of all calls to waitpid(). |
---|
959 | - make handling of eventscripts hanging more liberal. |
---|
960 | only consider the script to have failed and making the node unhealthy |
---|
961 | IF the eventscript terminated wiht an error |
---|
962 | OR the eventscript hung 5 or more times in a row |
---|
963 | |
---|
964 | * Mon Jul 7 2008 : Version 1.0.44 |
---|
965 | - Add a CTDB_VALGRIND option to /etc/sysconfig/ctdb to make it start |
---|
966 | ctdb under valgrind. Logs go to /var/log/ctdb_valgrind.PID |
---|
967 | - Add a hack to show the control opcode that caused uninitialized data |
---|
968 | in the valgrind output by encoding the opcode as the line number. |
---|
969 | - Initialize structures and allocated memory in various places in |
---|
970 | ctdb to make it valgrind-clean and remove all valgrind errors/warnings. |
---|
971 | - If/when we destroy a lockwait child, also make sure we cancel any pending transactions |
---|
972 | - If a transaction_commit fails, delete/cancel any pending transactions and |
---|
973 | return an error instead of calling ctdb_fatal() |
---|
974 | - When running ctdb under valgrind, make sure we run it with --nosetsched and also |
---|
975 | ensure that we do not use mem-mapped i/o when accessing the tdb's. |
---|
976 | - zero out ctdb->freeze_handle when we free/destroy a freeze-child. |
---|
977 | This prevent a heap corruption/ctdb crash bug that could trigger |
---|
978 | if the freeze child times out. |
---|
979 | - we dont need to explicitely thaw the databases from the recovery daemon |
---|
980 | since this is done implicitely when we restore the recovery mode back to normal. |
---|
981 | - track when we start and stop a recovery. Add the 'time it took to complete the |
---|
982 | recovery' to the 'ctdb uptime' output. |
---|
983 | Ensure by tracking the start/stop recovery timestamps that we do not |
---|
984 | check that the ip allocation is consistend from inside the recovery daemon |
---|
985 | while a different node (recovery master) is performing a recovery. |
---|
986 | This prevent a race that could cause a full recovery to trigger if the |
---|
987 | 'ctdb disable/enable' commands took very long. |
---|
988 | - The freeze child indicates to the master daemon that all databases are locked |
---|
989 | by writing data to the pipe shared with the master daemon. |
---|
990 | This write sometimes fail and thus the master daemon never notices that the databases |
---|
991 | are locked cvausing long timeouts and extra recoveries. |
---|
992 | Check that the write is successful and try the write again if it failed. |
---|
993 | - In each node, verify that the recmaster have the right node flags for us |
---|
994 | and force a push of our flags to the recmaster if wrong. |
---|
995 | |
---|
996 | * Tue Jul 1 2008 : Version 1.0.43 |
---|
997 | - Updates and bugfixes to the specfile to keep rpmlint happy |
---|
998 | - Force a global flags update after each recovery event. |
---|
999 | - Verify that the recmaster agrees with our node flags and update the |
---|
1000 | recmaster othervise. |
---|
1001 | - When writing back to the parent from a freeze-child across the pipe, |
---|
1002 | loop over the write in case the write failed with an error othervise |
---|
1003 | the parent will never be notified tha the child has completed the operation. |
---|
1004 | - Automatically thaw all databases when recmaster marks us as being in normal |
---|
1005 | mode instead of recovery mode. |
---|
1006 | |
---|
1007 | * Fri Jun 13 2008 : Version 1.0.42 |
---|
1008 | - When event scripts have hung/timedout more than EventScriptBanCount times |
---|
1009 | in a row the node will ban itself. |
---|
1010 | - Many updates to persistent write tests and the test scripts. |
---|
1011 | |
---|
1012 | * Wed May 28 2008 : Version 1.0.41 |
---|
1013 | - Reactivate the safe writes to persistent databases and solve the |
---|
1014 | locking issues. Locking issues are solved the only possible way, |
---|
1015 | by using a child process to do the writes. Expensive and slow but... . |
---|
1016 | |
---|
1017 | * Tue May 27 2008 : Version 1.0.40 |
---|
1018 | - Read the samba sysconfig file from the 50.samba eventscript |
---|
1019 | - Fix some emmory hierarchical bugs in the persistent write handling |
---|
1020 | |
---|
1021 | * Thu May 22 2008 : Version 1.0.39 |
---|
1022 | - Moved a CTDB_MANAGES_NFS, CTDB_MANAGES_ISCSI and CTDB_MANAGES_CSFTPD |
---|
1023 | into /etc/sysconfig/ctdb |
---|
1024 | - Lowered some debug messages to not fill the logfile with entries |
---|
1025 | that normally occur in the default configuration. |
---|
1026 | |
---|
1027 | * Fri May 16 2008 : Version 1.0.38 |
---|
1028 | - Add machine readable output support to "ctdb getmonmode" |
---|
1029 | - Lots of tweaks and enhancements if the event scripts are "slow" |
---|
1030 | - Merge from tridge: an attempt to break the chicken-and-egg deadlock that |
---|
1031 | net conf introduces if used from an eventscript. |
---|
1032 | - Enhance tickles so we can tickle an ipv6 connection. |
---|
1033 | - Start adding ipv6 support : create a new container to replace sockaddr_in. |
---|
1034 | - Add a checksum routine for ipv6/tcp |
---|
1035 | - When starting up ctdb, let the init script do a tdbdump on all |
---|
1036 | persistent databases and verify that they are good (i.e. not corrupted). |
---|
1037 | - Try to use "safe transactions" when writing to a persistent database |
---|
1038 | that was opened with the TDB_NOSYNC flag. If we can get the transaction |
---|
1039 | thats great, if we cant we have to write anyway since we cant block here. |
---|
1040 | |
---|
1041 | * Mon May 12 2008 : Version 1.0.37 |
---|
1042 | - When we shutdown ctdb we close the transport down before we run the |
---|
1043 | "shutdown" eventscripts. If ctdb decides to send a packet to a remote node |
---|
1044 | after we have shutdown the transport but before we have shutdown ctdbd |
---|
1045 | itself this could lead to a SEGV instead of a clean shutdown. Fix. |
---|
1046 | - When using the "exportfs" command to extract which NFS export directories |
---|
1047 | to monitor, exportfs violates the "principle of least surprise" and |
---|
1048 | sometimes report a single export line as two lines of text output |
---|
1049 | causing the monitoring to fail. |
---|
1050 | |
---|
1051 | * Fri May 9 2008 : Version 1.0.36 |
---|
1052 | - fix a memory corruption bug that could cause the recovery daemon to crash. |
---|
1053 | - fix a bug with distributing public ip addresses during recovery. |
---|
1054 | If the node that is the recovery master did NOT use public addresses, |
---|
1055 | then it assumed that no other node in the cluster used them either and |
---|
1056 | thus skipped the entire step of reallocating public addresses. |
---|
1057 | |
---|
1058 | * Wed May 7 2008 : Version 1.0.35 |
---|
1059 | - During recovery, when we define the new set of lmasters (vnnmap) |
---|
1060 | only consider those nodes that have the can-be-lmaster capability |
---|
1061 | when we create the vnnmap. unless there are no nodes available which |
---|
1062 | supports this capability in which case we allow the recmaster to |
---|
1063 | become lmaster capable (temporarily). |
---|
1064 | - Extend the async framework so that we can use paralell async calls |
---|
1065 | to controls that return data. |
---|
1066 | - If we do not have the "can be recmaster" capability, make sure we will |
---|
1067 | lose any recmaster elections, unless there are no nodes available that |
---|
1068 | have the capability, in which case we "take/win" the election anyway. |
---|
1069 | - Close and reopen the reclock pnn file at regular intervals. |
---|
1070 | Make it a non-fatal event if we occasionally fail to open/read/write |
---|
1071 | to this file. |
---|
1072 | - Monitor that the recovery daemon is still running from the main ctdb |
---|
1073 | daemon and shutdown the main daemon when recovery daemon has terminated. |
---|
1074 | - Add a "ctdb getcapabilities" command to read the capabilities off a node. |
---|
1075 | - Define two new capabilities : can be recmaster and can be lmaster |
---|
1076 | and default both capabilities to YES. |
---|
1077 | - Log denied tcp connection attempts with DEBUG_ERR and not DEBUG_WARNING |
---|
1078 | |
---|
1079 | * Thu Apr 24 2008 : Version 1.0.34 |
---|
1080 | - When deleting a public ip from a node, try to migrate the ip to a different |
---|
1081 | node first. |
---|
1082 | - Change catdb to produce output similar to tdbdump |
---|
1083 | - When adding a new public ip address, if this ip does not exist yet in |
---|
1084 | the cluster, then grab the ip on the local node and activate it. |
---|
1085 | - When a node disagrees with the recmaster on WHO is the recmaster, then |
---|
1086 | mark that node as a recovery culprit so it will eventually become |
---|
1087 | banned. |
---|
1088 | - Make ctdb eventscript support the -n all argument. |
---|
1089 | |
---|
1090 | * Thu Apr 10 2008 : Version 1.0.33 |
---|
1091 | - Add facilities to include site local adaptations to the eventscript |
---|
1092 | by /etc/ctdb/rc.local which will be read by all eventscripts. |
---|
1093 | - Add a "ctdb version" command. |
---|
1094 | - Secure the domain socket with proper permissions from Chris Cowan |
---|
1095 | - Bugfixes for AIX from Chris Cowan |
---|
1096 | |
---|
1097 | * Wed Apr 02 2008 : Version 1.0.32 |
---|
1098 | - Add a control to have a node execute the eventscripts with arbitrary |
---|
1099 | command line arguments. |
---|
1100 | - Add a control "rddumpmemory" that will dump the talloc memory allocations |
---|
1101 | for the recovery daemon. |
---|
1102 | - Decorate the talloc memdump to produce better and easier memory leak |
---|
1103 | tracking. |
---|
1104 | - Update the RHEL5 iscsi tgtd scripts to allow one iscsi target for each |
---|
1105 | public address. |
---|
1106 | - Add two new controls "addip/delip" that can be used to add/remove public |
---|
1107 | addresses to a node at runtime. After using these controls a "ctdb recover" |
---|
1108 | ir required to make the changes take. |
---|
1109 | - Fix a couple of slow memory leaks. |
---|
1110 | |
---|
1111 | * Tue Mar 25 2008 : Version 1.0.31 |
---|
1112 | - Add back controls to disable/enable monitoring on a node. |
---|
1113 | - Fix a memory leak where we used to attach CALL data to the ctdb structure |
---|
1114 | when performing a local call. Memory which would be lost if the call was |
---|
1115 | aborted. |
---|
1116 | - Reduce the loglevel for the log output when someone connects to a non |
---|
1117 | public ip address for samba. |
---|
1118 | - Redo and optimize the vacuuming process to send only one control to each |
---|
1119 | other node containing all records to be vacuumed instead of one |
---|
1120 | control per node per record. |
---|
1121 | |
---|
1122 | * Tue Mar 04 2008 : Version 1.0.30 |
---|
1123 | - Update documentation cor new commands and tuneables |
---|
1124 | - Add machinereadable output to the ip,uptime and getdebug commands |
---|
1125 | - Add a moveip command to manually failover/failback public ips |
---|
1126 | - Add NoIPFallback tuneable that prevents ip address failback |
---|
1127 | - Use file locking inside the CFS as alternative to verify when other nodes |
---|
1128 | Are connected/disconnected to be able to recover from split network |
---|
1129 | - Add DisableWhenUnhealthy tunable |
---|
1130 | - Add CTDB_START_AS_DISABLED sysconfig param |
---|
1131 | - Add --start-as-disabled flag to ctdb |
---|
1132 | - Add ability to monitor for OOM condition |
---|
1133 | |
---|
1134 | * Thu Feb 21 2008 : Version 1.0.29 |
---|
1135 | - Add a new command to make expansion of an existing cluster easier |
---|
1136 | - Fix bug with references to freed objects in the ctdb structure |
---|
1137 | - Propagate debuglevel changes to the recovery daemon |
---|
1138 | - Merge patches to event scripts from Mathieu Parent : |
---|
1139 | - MP: Simulate "service" on systems which do not provide this tool |
---|
1140 | - MP: Set correct permissions for events.d/README |
---|
1141 | - Add nice helper functions to start/stop nfs from the event scripts |
---|
1142 | |
---|
1143 | * Fri Feb 08 2008 : Version 1.0.28 |
---|
1144 | - Fix a problem where we tried to use ethtool on non-ethernet interfaces |
---|
1145 | - Warn if the ipvsadm packege is missing when LVS is used |
---|
1146 | - Dont use absolute pathnames in some of the event scripts |
---|
1147 | - Fix for persistent tdbs growing inifinitely. |
---|
1148 | |
---|
1149 | * Wed Feb 06 2008 : Version 1.0.27 |
---|
1150 | - Add eventscript for iscsi |
---|
1151 | |
---|
1152 | * Thu Jan 31 2008 : Version 1.0.26 |
---|
1153 | - Fix crashbug in tdb transaction code |
---|
1154 | |
---|
1155 | * Tue Jan 29 2008 : Version 1.0.25 |
---|
1156 | - added async recovery code |
---|
1157 | - make event scripts more portable |
---|
1158 | - fixed ctdb dumpmemory |
---|
1159 | - more efficient tdb allocation code |
---|
1160 | - improved machine readable ctdb status output |
---|
1161 | - added ctdb uptime |
---|
1162 | |
---|
1163 | * Wed Jan 16 2008 : Version 1.0.24 |
---|
1164 | - added syslog support |
---|
1165 | - documentation updates |
---|
1166 | |
---|
1167 | * Wed Jan 16 2008 : Version 1.0.23 |
---|
1168 | - fixed a memory leak in the recoveryd |
---|
1169 | - fixed a corruption bug in the new transaction code |
---|
1170 | - fixed a case where an packet for a disconnected client could be processed |
---|
1171 | - added http event script |
---|
1172 | - updated documentation |
---|
1173 | |
---|
1174 | * Thu Jan 10 2008 : Version 1.0.22 |
---|
1175 | - auto-run vacuum and repack ops |
---|
1176 | |
---|
1177 | * Wed Jan 09 2008 : Version 1.0.21 |
---|
1178 | - added ctdb vacuum and ctdb repack code |
---|
1179 | |
---|
1180 | * Sun Jan 06 2008 : Version 1.0.20 |
---|
1181 | - new transaction based recovery code |
---|
1182 | |
---|
1183 | * Sat Jan 05 2008 : Version 1.0.19 |
---|
1184 | - fixed non-master bug |
---|
1185 | - big speedup in recovery for large databases |
---|
1186 | - lots of changes to improve tdb and ctdb for high churn databases |
---|
1187 | |
---|
1188 | * Thu Dec 27 2007 : Version 1.0.18 |
---|
1189 | - fixed crash bug in monitor_handler |
---|
1190 | |
---|
1191 | * Tue Dec 04 2007 : Version 1.0.17 |
---|
1192 | - fixed bugs related to ban/unban of nodes |
---|
1193 | - fixed a race condition that could lead to monitoring being permanently disabled, |
---|
1194 | which would lead to long recovery times |
---|
1195 | - make deterministic IPs the default |
---|
1196 | - fixed a bug related to continuous recovery |
---|
1197 | - added a debugging option --node-ip |
---|