1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00
samba-mirror/ctdb/server
Michael Adam ffe62722cb recovery: add special pull-logic for persistent databases
The decision mechanism which records of a persistent db
are to be pulled into the recdb during recovery is now
as follows:

* Usually a record with the higher rsn than that already
  stored is taken. (Just as for normal tdbs.)

* If a transaction is running on some node, then those
  nodes copies of all records are taken and are not
  overwritten later by other nodes' copies.

In order to keep track of whether a record's copy was obtained
from a node with a transaction running, the recovery mechanism
misuses the ctdb tdb header field 'lacount' in the recdb.
It is cleared later when pushing out the recdb database to the
other nodes.

This way, an incomplete transaction is not spoiled when
a recovery interrupts and the replay should usually succeed
(possibly after a few retries).

Michael

(This used to be ctdb commit 8aef46d2aab3efb322dda51eaa202653cefd5222)
2009-12-04 15:00:21 +01:00
..
ctdb_banning.c new prototype banning code 2009-09-04 02:20:39 +10:00
ctdb_call.c Revert "From Wolfgang M." 2009-10-29 13:44:12 +11:00
ctdb_control.c Add a proper function to process a process-exist control in the daemon. 2009-12-02 13:58:27 +11:00
ctdb_daemon.c lower the loglevel for the message that a client has attached through a domian socket 2009-12-02 14:51:57 +11:00
ctdb_freeze.c change the lock wait child handling to use a pipe isntead of a socketpair 2009-11-26 12:08:35 +11:00
ctdb_keepalive.c add a new node state : DELETED. 2009-06-01 14:18:34 +10:00
ctdb_lockwait.c add logging everytime we create a filedescriptor in the main ctdb daemon 2009-10-15 11:24:54 +11:00
ctdb_logging.c add an in memory ringbuffer where we store the last 500000 log entries regardless of log level. 2009-11-18 12:44:18 +11:00
ctdb_ltdb_server.c lower the loglevel for the message that a client has attached to a persistent database 2009-12-02 14:53:21 +11:00
ctdb_monitor.c When starting up ctdbd, wait until all initial recoveries have finished 2009-12-01 13:19:58 +11:00
ctdb_persistent.c server: fix debug message in trans2_commit (refusing persistent store during transaction) 2009-10-30 09:29:25 +11:00
ctdb_recover.c Add flag to ctdb_event_script_callback indicating when called by client. 2009-11-26 15:49:49 +11:00
ctdb_recoverd.c recovery: add special pull-logic for persistent databases 2009-12-04 15:00:21 +01:00
ctdb_server.c make it possible to start the daemon in STOPPED mode 2009-07-09 11:57:20 +10:00
ctdb_serverids.c merge from ronnie 2008-02-04 20:07:15 +11:00
ctdb_takeover.c Merge commit 'martins/status-test-2' 2009-12-01 10:53:18 +11:00
ctdb_traverse.c add logging everytime we create a filedescriptor in the main ctdb daemon 2009-10-15 11:24:54 +11:00
ctdb_tunables.c test of a change to make ctdbd use "status" event instead of the "monitor" event. 2009-11-13 12:37:55 +11:00
ctdb_uptime.c track both when we last started and ended a recovery. 2008-07-02 13:55:59 +10:00
ctdb_vacuum.c reduce the log level for three vacuuming related log messages 2009-11-24 09:27:22 +11:00
ctdbd.c start the syslog child a little later, after we have forked and detached from the local shell 2009-10-30 19:39:11 +11:00
eventscript.c Merge commit 'martins/status-test-2' 2009-12-01 10:53:18 +11:00