vlendec/samba-autobuild/.git
17 years ago- take advantage of the new EVENT_FD_AUTOCLOSE flag
Andrew Tridgell [Sat, 5 May 2007 07:19:59 +0000 (17:19 +1000)]
- take advantage of the new EVENT_FD_AUTOCLOSE flag
- use the tdb_chainlock_mark() call to allow us to guarantee forward progress in the ctdb_lockwait code

(This used to be ctdb commit e201e98aad0fef6a779a80f3b1ae7792953e2d6b)

17 years agoallow the events system to be chosen on the command line
Andrew Tridgell [Sat, 5 May 2007 07:18:43 +0000 (17:18 +1000)]
allow the events system to be chosen on the command line
(This used to be ctdb commit 2fe976d7a376a763472cc7952a78b6249ce416c8)

17 years agouse the new lib/events autoconf code
Andrew Tridgell [Sat, 5 May 2007 07:18:06 +0000 (17:18 +1000)]
use the new lib/events autoconf code
(This used to be ctdb commit fec779711e8c4d6e047d792aee744e60e5a9f67c)

17 years ago- added a EVENT_FD_AUTOCLOSE flag that allows you to tell the event system to close...
Andrew Tridgell [Sat, 5 May 2007 07:17:25 +0000 (17:17 +1000)]
- added a EVENT_FD_AUTOCLOSE flag that allows you to tell the event system to close the fd automatically when a fd_event is freed. This prevents races which can lead to epoll missing events
- added autoconf rules for automatically building with epoll support

(This used to be ctdb commit 4d113298b26f7163992f2e47429c953bd4f957c9)

17 years agoadded tdb_chainlock_mark() call, which can be used to mark a chain locked without...
Andrew Tridgell [Sat, 5 May 2007 07:14:33 +0000 (17:14 +1000)]
added tdb_chainlock_mark() call, which can be used to mark a chain locked without actually locking it. This will be used to guarantee forward progress in the ctdb non-blocking lockwait code
(This used to be ctdb commit 2af98c3418496b39106c7282f550049ec8239657)

17 years agoshow number of connected clients in status output
Andrew Tridgell [Sat, 5 May 2007 04:09:46 +0000 (14:09 +1000)]
show number of connected clients in status output
(This used to be ctdb commit 99765bbe327bfe9c43415f4943281458f25be51b)

17 years agoadded a dumpmemory control, used to find memory leaks
Andrew Tridgell [Sat, 5 May 2007 01:03:10 +0000 (11:03 +1000)]
added a dumpmemory control, used to find memory leaks
(This used to be ctdb commit 44fdafaf421e3e906796d529aed2f7c5df201b94)

17 years ago- fixed a crash bug after client disconnect in ctdb_control
Andrew Tridgell [Fri, 4 May 2007 22:33:35 +0000 (08:33 +1000)]
- fixed a crash bug after client disconnect in ctdb_control
- added total memory used to ctdb_control status output

(This used to be ctdb commit a99ffe4372edc63d83d8c8ebf9a60b3413301f5a)

17 years ago- added counters for controls in ctdb_control status
Andrew Tridgell [Fri, 4 May 2007 22:11:54 +0000 (08:11 +1000)]
- added counters for controls in ctdb_control status
(This used to be ctdb commit 858061372fc9902837a1a5b8bcfc0ada58eec193)

17 years agomerged from ronnie
Andrew Tridgell [Fri, 4 May 2007 21:39:23 +0000 (07:39 +1000)]
merged from ronnie
(This used to be ctdb commit 88f0977f303836b50aa9239a9eb3447646bc1e3f)

17 years agomerge from tridge
Ronnie Sahlberg [Fri, 4 May 2007 15:22:30 +0000 (01:22 +1000)]
merge from tridge

(This used to be ctdb commit 62574808ef4dcb76760f1dd2496fbe8e34197c23)

17 years agoadded seqnum propogation code to ctdb
Andrew Tridgell [Fri, 4 May 2007 12:18:00 +0000 (22:18 +1000)]
added seqnum propogation code to ctdb
(This used to be ctdb commit be2572b1b09eaaa1ea6a726d60f16996f9407d13)

17 years agomerge from tridge
Ronnie Sahlberg [Fri, 4 May 2007 07:05:28 +0000 (17:05 +1000)]
merge from tridge

(This used to be ctdb commit 6c8b90cedc67daa89d54db5268fde18bfc20abaf)

17 years agoadded a ctdb control for enabling the tdb seqnum
Andrew Tridgell [Fri, 4 May 2007 05:33:28 +0000 (15:33 +1000)]
added a ctdb control for enabling the tdb seqnum
(This used to be ctdb commit c66920d9fb08a4a33418e2c1dcf1fc320fba3761)

17 years agoadded a tdb_enable_seqnum() function
Andrew Tridgell [Fri, 4 May 2007 05:29:10 +0000 (15:29 +1000)]
added a tdb_enable_seqnum() function
(This used to be ctdb commit 1f89da231c6637e339d5da156d6a48340706fe61)

17 years agoremove a exit from the test script
Ronnie Sahlberg [Fri, 4 May 2007 05:25:57 +0000 (15:25 +1000)]
remove a exit from the test script

(This used to be ctdb commit 4adb61f8270dbd15732bc458d49a66138dd240cc)

17 years agorecovery daemon
Ronnie Sahlberg [Fri, 4 May 2007 05:21:40 +0000 (15:21 +1000)]
recovery daemon

this program is a client to the local ctdb daemon

every second it pulls all vnnmap and nodemaps from all nodes that are
available and checks if a recovery is required

a recovery is required if :
* all nodes do NOT have an identical vnnmap and generation
* all nodes do NOT have an identical nodemap
* there are active nodes that are NOT in the nodemap
* there are nodes in the nodemap that are NOT active

During recovery,  the recovery tool will also make sure that all nodes
know about and have created all databases.

(This used to be ctdb commit 2f2650467bac7e8954de7c17cb34f46b0bdbcd26)

17 years agomake catdb take a dbname instead of an id
Andrew Tridgell [Fri, 4 May 2007 03:25:30 +0000 (13:25 +1000)]
make catdb take a dbname instead of an id
(This used to be ctdb commit 365346345c33d2f310bb23d0c6ab5c3ed5e6e938)

17 years agonicer interface to ctdb traverse
Andrew Tridgell [Fri, 4 May 2007 02:18:39 +0000 (12:18 +1000)]
nicer interface to ctdb traverse
(This used to be ctdb commit e5ce866dcc5037b5069e42bf1e168b646f007b01)

17 years agoalso verify that the generation id is the same on all the nodes and if
Ronnie Sahlberg [Fri, 4 May 2007 01:57:45 +0000 (11:57 +1000)]
also verify that the generation id is the same on all the nodes and if
not, trigger a recovery

(This used to be ctdb commit 46b8a66ee70419c153acf45eeec88c1fc8f230ce)

17 years agomerge from tridge
Ronnie Sahlberg [Fri, 4 May 2007 01:51:07 +0000 (11:51 +1000)]
merge from tridge

(This used to be ctdb commit 5724d41352df252151e54ecdb02baa7f82c3aabf)

17 years ago- changed the REQ_REGISTER PDU to be a control
Andrew Tridgell [Fri, 4 May 2007 01:41:29 +0000 (11:41 +1000)]
- changed the REQ_REGISTER PDU to be a control

- allow controls to know which client invoked them

- added a client_id to clients, so they can be identified remotely

- added the ability to remove registered srvids

- in the list_keys code, register a temp srvid, then remove it afterwards

(This used to be ctdb commit 29603c51cc6d81362532cd8e50f75c8360c5f5ef)

17 years agomerge from ronnie
Andrew Tridgell [Fri, 4 May 2007 00:43:39 +0000 (10:43 +1000)]
merge from ronnie
(This used to be ctdb commit cf23175526d8fde1ef145605fb545584384b6cec)

17 years agoupdate getvnnmap control to take a timeout parameter
Ronnie Sahlberg [Thu, 3 May 2007 23:45:53 +0000 (09:45 +1000)]
update getvnnmap control to take a timeout parameter
dont explicitely free the vnnmap pointer in the getvnnmap control  this
is freed by the mem_ctx instead

add code to the recoverd to detect when/if recovery is required
veiry that the number of active nodes, the nodemap and the vnn map is
consistent across the entire cluster and if not   trigger a recovery
(which right now just prints "we need to do recovery" to the screen.

(This used to be ctdb commit 2b0a207a3748bdb3394dc9fd0d1c344ee1bb0bb5)

17 years agochange the signature for ctdb_ctrl_getnodemap() so that a timeout
Ronnie Sahlberg [Thu, 3 May 2007 23:01:01 +0000 (09:01 +1000)]
change the signature for ctdb_ctrl_getnodemap() so that a timeout
parameter is added.
change ctdb_get_connected_nodes in the same way

(This used to be ctdb commit d85f23bcf4c1230225abb2f4a053c70b68d469aa)

17 years agoctdb_control should use the provided timeout and not hardcode to 1.0
Ronnie Sahlberg [Thu, 3 May 2007 22:32:02 +0000 (08:32 +1000)]
ctdb_control should use the provided timeout and not hardcode to 1.0
seconds

(This used to be ctdb commit 03acb2f450578f6195ab2d0a598f6720e33e7cfb)

17 years agostart working on a recovery daemon
Ronnie Sahlberg [Thu, 3 May 2007 22:30:18 +0000 (08:30 +1000)]
start working on a recovery daemon

change ctdb_control so it takes a timeval pointer as argument.
this is the timeout. if the node has not responded within hte timeout
ctdb_control will return an error instead of hanging.
if the timeval pointer is NULL then the call will block indefinitely if
there is no response.

this is used for now in the createdb control   but all the helpers
ctdb_ctrl_* should probably be updated to take a timeout parameter as
well.

(This used to be ctdb commit 1fe64b04869b17dbf123851b0fe09df8d28a6211)

17 years agomerge from tridge
Ronnie Sahlberg [Thu, 3 May 2007 07:16:38 +0000 (17:16 +1000)]
merge from tridge

(This used to be ctdb commit fb8ac93c7dfc11e774ef1ce05b0d0df1de56a621)

17 years agofirst version of traverse is working
Andrew Tridgell [Thu, 3 May 2007 07:12:23 +0000 (17:12 +1000)]
first version of traverse is working
(This used to be ctdb commit ecac90cee389a6fa0e9b1efba521e098a24d323f)

17 years agocleanup the control "write record"
Ronnie Sahlberg [Thu, 3 May 2007 06:18:03 +0000 (16:18 +1000)]
cleanup the control "write record"

(This used to be ctdb commit 4dd5c26a21a5dc2b2f76eb23cfeb4df82ba4e956)

17 years agomerge from tridge
Ronnie Sahlberg [Thu, 3 May 2007 04:42:53 +0000 (14:42 +1000)]
merge from tridge

(This used to be ctdb commit abf4c9d0cccd937a7036bd03b1b4c6e635c8eb58)

17 years agomerged from ronnie
Andrew Tridgell [Thu, 3 May 2007 03:53:54 +0000 (13:53 +1000)]
merged from ronnie
(This used to be ctdb commit 57a80110ddfd202f8de37297db76dc43a064e476)

17 years agodon't zero beyond packet header unnecessarily
Andrew Tridgell [Thu, 3 May 2007 03:44:27 +0000 (13:44 +1000)]
don't zero beyond packet header unnecessarily
(This used to be ctdb commit 4cf88ca2ce81db8fe10b0dfedb81d99a2bd93328)

17 years agocleanup getnodemap
Ronnie Sahlberg [Thu, 3 May 2007 03:30:38 +0000 (13:30 +1000)]
cleanup getnodemap

(This used to be ctdb commit 3867ccf71a167fb82dbc5a3f03f968a325a0c70b)

17 years agofixup getdbmap control so it looks a bit nicer
Ronnie Sahlberg [Thu, 3 May 2007 03:07:34 +0000 (13:07 +1000)]
fixup getdbmap control so it looks a bit nicer

(This used to be ctdb commit 78a4d61cb78da20af5210488e685c91bc3023e90)

17 years agofirst stage of efficient non-blocking ctdb traverse
Andrew Tridgell [Thu, 3 May 2007 02:16:03 +0000 (12:16 +1000)]
first stage of efficient non-blocking ctdb traverse
(This used to be ctdb commit 4c23e6f26bde421bb56b55de9d6cd3e319b2be40)

17 years agomerged cleanup from ronnie
Andrew Tridgell [Thu, 3 May 2007 01:13:01 +0000 (11:13 +1000)]
merged cleanup from ronnie
(This used to be ctdb commit 971e7f82f3e1e9bfc8d521080c86431fbb59277d)

17 years agobreak set/get vnn map out from ctdb_control and put it in ctdb_recover.c
Ronnie Sahlberg [Thu, 3 May 2007 01:06:24 +0000 (11:06 +1000)]
break set/get vnn map out from ctdb_control and put it in ctdb_recover.c
for the time being

remove all the [de]marshalling and just pass a structure around instead

(This used to be ctdb commit b1169555ab7015976c0135ff51121cc238f5887c)

17 years agomerge from ronnie
Andrew Tridgell [Wed, 2 May 2007 21:48:08 +0000 (07:48 +1000)]
merge from ronnie
(This used to be ctdb commit bac8eed2c247a7970836c0e6c2b9e2664922f410)

17 years agomerge from tridge
Ronnie Sahlberg [Wed, 2 May 2007 21:21:29 +0000 (07:21 +1000)]
merge from tridge

(This used to be ctdb commit ae72aac605d0c68134d65c213d76496e6293ebc4)

17 years agomerge from ronnie
Andrew Tridgell [Wed, 2 May 2007 21:19:29 +0000 (07:19 +1000)]
merge from ronnie
(This used to be ctdb commit daba707370b28e200d9e55eb81fc819b62f8fbdd)

17 years agomerge from tridge
Ronnie Sahlberg [Wed, 2 May 2007 19:52:45 +0000 (05:52 +1000)]
merge from tridge

(This used to be ctdb commit 2321a2a31e43208f16d6af15ee55a489670de005)

17 years agofixed a memory leak in the ctdb_control code
Andrew Tridgell [Wed, 2 May 2007 19:51:46 +0000 (05:51 +1000)]
fixed a memory leak in the ctdb_control code
(This used to be ctdb commit 70aa77a66bb5f16c93ecb122b92a6e63f6343ab1)

17 years agoenabled built in popt if system doesn't have it
Andrew Tridgell [Wed, 2 May 2007 19:21:14 +0000 (05:21 +1000)]
enabled built in popt if system doesn't have it
(This used to be ctdb commit 30c8d69267a78e1d3dea0fcc936ee2939bb7a373)

17 years agomerge from tridge
Ronnie Sahlberg [Wed, 2 May 2007 12:00:48 +0000 (22:00 +1000)]
merge from tridge

(This used to be ctdb commit 17b73a811009588f836c3f9fd1b775d9d504d30c)

17 years agodo a real recovery by killing a node and then calling the recover
Ronnie Sahlberg [Wed, 2 May 2007 11:31:20 +0000 (21:31 +1000)]
do a real recovery by killing a node and then calling the recover
control

(This used to be ctdb commit f8d97f8b56f0af83a514ec0364eb915e2d5ea2d7)

17 years agorecover.sh test script that build a few database and populates them with
Ronnie Sahlberg [Wed, 2 May 2007 11:14:37 +0000 (21:14 +1000)]
recover.sh test script that build a few database and populates them with
a record  then performs a recovery which merges all records onto node 0

(This used to be ctdb commit 54a072deb40d8d4a4a9e35bfde0eec3c867211d0)

17 years agoadd a recover test change alignment for the pull/push db structures
Ronnie Sahlberg [Wed, 2 May 2007 11:00:02 +0000 (21:00 +1000)]
add a recover test   change alignment for the pull/push db structures

(This used to be ctdb commit 0eb45623ca103e69765ed577ae02e7f8ca777e37)

17 years agoadded a builtin fetch function to support samba3 unlocked fetch
Andrew Tridgell [Wed, 2 May 2007 05:11:11 +0000 (15:11 +1000)]
added a builtin fetch function to support samba3 unlocked fetch
(This used to be ctdb commit 8c57a8355a94a7d714b9bec98533bc40a2bc4684)

17 years agonicer command parsing in ctdb_control
Andrew Tridgell [Wed, 2 May 2007 03:34:55 +0000 (13:34 +1000)]
nicer command parsing in ctdb_control
(This used to be ctdb commit 440077ffabb4ce831004b36ac26bd2f8f9b41499)

17 years agodiscard REQ/REPLY DMASTER when generation id is wrong or when in
Ronnie Sahlberg [Wed, 2 May 2007 03:31:42 +0000 (13:31 +1000)]
discard REQ/REPLY DMASTER when generation id is wrong or when in
recovery mode

(This used to be ctdb commit bfd6d430f22e38cff1d64510dc447cfbe1dab35f)

17 years agonicer string handling in usage
Andrew Tridgell [Wed, 2 May 2007 03:29:03 +0000 (13:29 +1000)]
nicer string handling in usage
(This used to be ctdb commit 8c568ada9b46132ebfa452def4f8ba3f11240532)

17 years agomerged from ronnie
Andrew Tridgell [Wed, 2 May 2007 03:25:45 +0000 (13:25 +1000)]
merged from ronnie
(This used to be ctdb commit 77255f93d432829387dc328b0ae726cc9cba8d68)

17 years agoremove sleep from the fetch test
Ronnie Sahlberg [Wed, 2 May 2007 03:14:12 +0000 (13:14 +1000)]
remove sleep from the fetch test

add a test script to start 4 daemons to test recovery

(This used to be ctdb commit 09eab12b00934afa5159fc500faf6b07effb2804)

17 years agoadd a control to create a database
Ronnie Sahlberg [Wed, 2 May 2007 02:43:35 +0000 (12:43 +1000)]
add a control to create a database

(This used to be ctdb commit 74e489c6737cc79537c7812ea82daafb1b363ec2)

17 years agoremove test code in the fetch test to keep the daemons running forever
Ronnie Sahlberg [Wed, 2 May 2007 01:09:10 +0000 (11:09 +1000)]
remove test code in the fetch test to keep the daemons running forever
(so one has lots of tiume to play with ctdb_control)

(This used to be ctdb commit 8fbaf82a7b3f0e62c887e91731ad8c659122c785)

17 years agochange the getnodemap control to a more consistent output for whether a
Ronnie Sahlberg [Wed, 2 May 2007 01:06:58 +0000 (11:06 +1000)]
change the getnodemap control to a more consistent output for whether a
node is connected or not

(This used to be ctdb commit 65c5fe53937a17e1fa6de5739cbd01b982dc49bb)

17 years agoupdate some calls to ctdb_control() that were still using the old
Ronnie Sahlberg [Wed, 2 May 2007 01:02:04 +0000 (11:02 +1000)]
update some calls to ctdb_control() that were still using the old
signature (flags field)

update some calls to ctdb_get_config() to use the new name
ctdb_ctrl_get_config()

change #include "talloc/talloc.h" to #include "lib/talloc/talloc.h" in
lib/events/events.h

(This used to be ctdb commit d2cdd87037b9f0c387228d7d4743da4869929c93)

17 years agomerge with tridges tree to resolve all conflicts
Ronnie Sahlberg [Wed, 2 May 2007 00:53:29 +0000 (10:53 +1000)]
merge with tridges tree to resolve all conflicts

(This used to be ctdb commit 0f7c6c580ef0de60af68fd22bce36c0c0b2515b0)

17 years agospecify which node to perform recovery to when using the recovery
Ronnie Sahlberg [Wed, 2 May 2007 00:37:43 +0000 (10:37 +1000)]
specify which node to perform recovery to when using the recovery
control

(This used to be ctdb commit c67f8a1783ce6f5af9940d2e22847ddcd939763d)

17 years agofix a bug in pushdb control.
Ronnie Sahlberg [Wed, 2 May 2007 00:25:14 +0000 (10:25 +1000)]
fix a bug in pushdb control.

we should only write the pushed record if RSN of the new one if higher
than the rsn of the existing one    not the other way around

(This used to be ctdb commit f535008c3755cf84acff7bc73ea05c0901e940ef)

17 years agoadd an initial recovery control to perform samba3 style recovery
Ronnie Sahlberg [Wed, 2 May 2007 00:20:34 +0000 (10:20 +1000)]
add an initial recovery control to perform samba3 style recovery

this is not optimized at all and copies/merges all records between
databases instead of only those records for which a certain node is
lmaster.  (step 7 should later be enhanced to a, delete the database,
push only those records for which the node is lmaster)

(This used to be ctdb commit 509d2c71169e96a8610f9db91293dc7a73c2cc10)

17 years agonew files for updated events system
Andrew Tridgell [Tue, 1 May 2007 21:37:58 +0000 (07:37 +1000)]
new files for updated events system
(This used to be ctdb commit 15d8308e5a0ce04351d70ac3dd25c7698931ebba)

17 years agomerge latest versions of lib/replace, lib/talloc, lib/tdb and lib/events into ctdb...
Andrew Tridgell [Tue, 1 May 2007 21:32:04 +0000 (07:32 +1000)]
merge latest versions of lib/replace, lib/talloc, lib/tdb and lib/events into ctdb bzr tree
(This used to be ctdb commit eaea8a9fa8d2f5e08f3af619fa1008a663f39053)

17 years agofixed a lib/events bug found by volker
Andrew Tridgell [Tue, 1 May 2007 20:50:12 +0000 (06:50 +1000)]
fixed a lib/events bug found by volker
(This used to be ctdb commit 46cd984500cd77d295f059132b4892dbfbc2bcd3)

17 years agoadded a hopcount in ctdb_call
Andrew Tridgell [Tue, 1 May 2007 03:25:02 +0000 (13:25 +1000)]
added a hopcount in ctdb_call
(This used to be ctdb commit 36d838801a2a2008c50322cdbfff65a308b1cd1a)

17 years agoauto-determine listen address by attempting to bind to each address in the cluster...
Andrew Tridgell [Mon, 30 Apr 2007 20:34:55 +0000 (06:34 +1000)]
auto-determine listen address by attempting to bind to each address in the cluster in turn
(This used to be ctdb commit 2fab9f96df2e5b5c51c860fd65caf0e926a63e34)

17 years agoadded attach command in ctdb_control
Andrew Tridgell [Mon, 30 Apr 2007 13:54:06 +0000 (15:54 +0200)]
added attach command in ctdb_control
(This used to be ctdb commit 172ee33306be2ef5ce17a5b9d7fbcc1f265a1b0b)

17 years agochanged the way set_call and attach are done so that you can safely
Andrew Tridgell [Mon, 30 Apr 2007 13:31:40 +0000 (15:31 +0200)]
changed the way set_call and attach are done so that you can safely
attach to databases after the protocol has started. The daemon
broadcasts information on new databases to the other daemons.

This also eliminates the need for the client to know about the hash
between db name and db_id.

(This used to be ctdb commit 3bad91a9d987d4c09fe3322eac23c2733660ad08)

17 years agodon't use stderr here - rely on logging
Andrew Tridgell [Mon, 30 Apr 2007 09:10:21 +0000 (11:10 +0200)]
don't use stderr here - rely on logging
(This used to be ctdb commit a2a3b254b22dbaafc8c4934d99cc67d6ae4adbd1)

17 years agosaner logfile code
Andrew Tridgell [Sun, 29 Apr 2007 20:42:23 +0000 (22:42 +0200)]
saner logfile code
testing of ctdbd

(This used to be ctdb commit 05789da5818f8b20f04779b0df5125914d9047f6)

17 years agoadd push/pull of tdb and a control to copy a tdb from one node to
Ronnie Sahlberg [Sun, 29 Apr 2007 14:58:27 +0000 (00:58 +1000)]
add push/pull of tdb  and a control to copy a tdb from one node to
another node

(This used to be ctdb commit c313daff4c1362cd08a9f682ce04cab312678038)

17 years agoyay! finally fixed the bug that volker, ronnie and I have been chasing
Andrew Tridgell [Sun, 29 Apr 2007 14:19:40 +0000 (16:19 +0200)]
yay! finally fixed the bug that volker, ronnie and I have been chasing
for 2 days.

The main bug was in smbd, but there was a secondary (and more subtle)
bug in ctdb that the bug in smbd exposed. When we get send a dmaster
reply, we have to correctly update the dmaster in the recipient even
if the original requst has timed out, otherwise ctdbd can get into a
loop fighting over who will handle a key.

This patch also cleans up the packet allocation, and makes ctdbd
become a real daemon.

(This used to be ctdb commit 59405e59ef522b97d8e20e4b14310a217141ac7c)

17 years agomerge from tridge
Ronnie Sahlberg [Sun, 29 Apr 2007 13:49:27 +0000 (23:49 +1000)]
merge from tridge

(This used to be ctdb commit a84e9b47a87fc7d4756b4a179aa2ea0bc7c54c78)

17 years agoadd a new "recovery mode" field to ctdb.
Ronnie Sahlberg [Sun, 29 Apr 2007 12:51:56 +0000 (22:51 +1000)]
add a new "recovery mode" field to ctdb.
while recovery is in progress  the daemon will discard all CTDB_REQ_CALL
and rely on clients retransmitting them

add new controls to get/set the recovery mode

(This used to be ctdb commit 41458a61577885ac49150f830e92e93e634c5411)

17 years agoimplement a control to pull a database from a remote node
Ronnie Sahlberg [Sun, 29 Apr 2007 12:14:51 +0000 (22:14 +1000)]
implement a control to pull a database from a remote node

it does not yet work since ctdb_control can right now only be called
from client context and the pull is implemented as the target ctdb node
itself using a get_keys to pull the keys from the source node   thus
ctdb daemon needs to ctdb_control to a remote node

(This used to be ctdb commit a55c7c64b4ff87f54b90649c9f469b1ff36dc9ea)

17 years agocontrol to delete all records in a database
Ronnie Sahlberg [Sun, 29 Apr 2007 08:48:46 +0000 (18:48 +1000)]
control to delete all records in a database

(This used to be ctdb commit 6664e00fc02e1c60cc1a35ecd15f4893a34f23d1)

17 years agoadd a new control to set all records in a database to a new dmaster
Ronnie Sahlberg [Sun, 29 Apr 2007 08:34:11 +0000 (18:34 +1000)]
add a new control to set all records in a database to a new dmaster

(This used to be ctdb commit fd0d2385206b0329b74d908f3bdf89d3f32095d1)

17 years agoadd a control to read an entire tdb from a node including
Ronnie Sahlberg [Sat, 28 Apr 2007 19:47:13 +0000 (05:47 +1000)]
add a control to read an entire tdb from a node including
key/lmaster/header and data

(This used to be ctdb commit ac00d6271ba6356c1edf804df44d0d2600791610)

17 years agoadded reset status control
Andrew Tridgell [Sat, 28 Apr 2007 17:13:36 +0000 (19:13 +0200)]
added reset status control
(This used to be ctdb commit ec342b667a085a5c740fbeec8882070571071862)

17 years agoremoved unnecessary variable
Andrew Tridgell [Sat, 28 Apr 2007 16:55:37 +0000 (18:55 +0200)]
removed unnecessary variable
(This used to be ctdb commit ef0027faa631b00c7fc1a7c4538fbf3080248f0b)

17 years agomuch simpler redirect logic
Andrew Tridgell [Sat, 28 Apr 2007 16:18:33 +0000 (18:18 +0200)]
much simpler redirect logic
(This used to be ctdb commit 95db9afa7dd039e1700e2f3078782f6ac66e9f51)

17 years agobetter name for this hack
Andrew Tridgell [Sat, 28 Apr 2007 15:46:37 +0000 (17:46 +0200)]
better name for this hack
(This used to be ctdb commit e5a98eee991a7926ddb6964ea3785b11303d175e)

17 years agouse ctdb_get_connected_nodes for node listing
Andrew Tridgell [Sat, 28 Apr 2007 15:42:40 +0000 (17:42 +0200)]
use ctdb_get_connected_nodes for node listing
(This used to be ctdb commit b4efdd1944207e51dccd6cd5e50f451a7dddcd91)

17 years agoadded status all and debug all control operations
Andrew Tridgell [Sat, 28 Apr 2007 15:13:30 +0000 (17:13 +0200)]
added status all and debug all control operations
(This used to be ctdb commit 7f902f6c4270adc0543096c78415d335b88d6232)

17 years agouse rsync to avoid text busy on install
Andrew Tridgell [Sat, 28 Apr 2007 15:13:02 +0000 (17:13 +0200)]
use rsync to avoid text busy on install
(This used to be ctdb commit d19be7ea56003faffcb3fb8a76fd804df0431242)

17 years agoreport number of clients in ping
Andrew Tridgell [Sat, 28 Apr 2007 13:15:21 +0000 (15:15 +0200)]
report number of clients in ping
(This used to be ctdb commit 9deaa1892faa8288cad9f6fde20d2aa8ba8af699)

17 years agomerge with tridge
Ronnie Sahlberg [Sat, 28 Apr 2007 13:11:23 +0000 (23:11 +1000)]
merge with tridge

fix the logic in ctdb_connected to print CONNECTED if the node is
connected and UNAVAILABLE when the node is dead  instead of the opposite

(This used to be ctdb commit 0f431d2f3e0bd94d10fe77e56cf0ed6c48402400)

17 years agomerged from ronnie
Andrew Tridgell [Sat, 28 Apr 2007 11:02:59 +0000 (13:02 +0200)]
merged from ronnie
(This used to be ctdb commit 521484a462dcddeebe02bb9c725e18939919b6fe)

17 years agoprint vnn as decimal instead of hex
Ronnie Sahlberg [Sat, 28 Apr 2007 10:42:42 +0000 (20:42 +1000)]
print vnn as decimal instead of hex

(This used to be ctdb commit 89512fd659c5b1dc450b7162ca985a7083fd40ac)

17 years agoadd a few more controls that are useful for debugging a cluster
Ronnie Sahlberg [Sat, 28 Apr 2007 10:40:26 +0000 (20:40 +1000)]
add a few more controls that are useful for debugging a cluster

(This used to be ctdb commit 751c1365ab55a217ff33d985d52bd26581578617)

17 years agoallow ctdbd_allocate_pkt to be used in client code
Andrew Tridgell [Sat, 28 Apr 2007 10:01:46 +0000 (12:01 +0200)]
allow ctdbd_allocate_pkt to be used in client code
(This used to be ctdb commit 2c37cc7bb97dee5bb2e929958e6c834b27c9ae6a)

17 years agoadd a control to pull the database list from a remote node
Ronnie Sahlberg [Sat, 28 Apr 2007 10:00:50 +0000 (20:00 +1000)]
add a control to pull the database list from a remote node

(This used to be ctdb commit d130e02936ea4bdcd3a6f02c53be4b7771993138)

17 years agofixed some warnings
Andrew Tridgell [Sat, 28 Apr 2007 09:35:49 +0000 (11:35 +0200)]
fixed some warnings
(This used to be ctdb commit b5434a40cf2db008eb1e681fcd2ceeff331324fa)

17 years agoyou cant dereference ctdb->vnnmap in the client since it is null in hte
Ronnie Sahlberg [Sat, 28 Apr 2007 09:28:25 +0000 (19:28 +1000)]
you cant dereference ctdb->vnnmap in the client since it is null in hte
client

(This used to be ctdb commit cbd01fc8978f798a5eb5c8920a1acb68d43f7a80)

17 years agoadded make test and make valgrindtest targets
Andrew Tridgell [Sat, 28 Apr 2007 08:57:58 +0000 (10:57 +0200)]
added make test and make valgrindtest targets
(This used to be ctdb commit b69fb43643993ee5aaabf8711bb874f95d468f35)

17 years agomerge from tridge
Ronnie Sahlberg [Sat, 28 Apr 2007 08:52:22 +0000 (18:52 +1000)]
merge from tridge

(This used to be ctdb commit 6ca7caa90f4aa7fa2753f6ee9090d629cdb63871)

17 years agofactor out the packet allocation code
Andrew Tridgell [Sat, 28 Apr 2007 08:50:32 +0000 (10:50 +0200)]
factor out the packet allocation code
(This used to be ctdb commit 4cbaf22cc4bede8c95dd9b87e21bbe886307e23b)

17 years agomerge from ronnie
Andrew Tridgell [Sat, 28 Apr 2007 07:54:45 +0000 (09:54 +0200)]
merge from ronnie
(This used to be ctdb commit 9253714401de1d7fea6ad44c35f324004683abd7)

17 years agoctdb will now verify that the generation id for all CTDB_REQ_CALLs that
Ronnie Sahlberg [Fri, 27 Apr 2007 15:48:31 +0000 (01:48 +1000)]
ctdb will now verify that the generation id for all CTDB_REQ_CALLs that
it receives from remote nodes with its own generation number.

if the generation id do not match the daemon will just discard the
packet completely.
this will require that clients such as samba3 will have to be aware that
calls it sends to remote nodes may get lost and will have to resend the
requests after a timeout.

during cluster recovery/reconfiguration the generation nnumbers will be
changing and this can be used to prevent nodes that are still in the
"old" instance from talking to nodes that belong to the new generation
instance

(This used to be ctdb commit 4c197f1cbfdd5f65af9c059aae2b4508ebd0cd34)