summaryrefslogtreecommitdiffstats
path: root/ctdb/tools
Commit message (Collapse)AuthorAgeFilesLines
...
* tools/ctdb_diagnostics: Safer temporary file creationMartin Schwenke2013-08-221-3/+10
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 406e1cb1fdd17ddd239774d0228e3657b73ae68f)
* tools/ctdb: Make most non-auto-all commands abort if run with -n allMartin Schwenke2013-08-221-6/+42
| | | | | | | | Or if run with -n A,B,... Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit b1d8732b5da18ae80aea1df0e66b0b5cdcd919bc)
* tools/ctdb: Remove more non-essential fetching of PNN from daemonMartin Schwenke2013-08-221-25/+21
| | | | | | | | | | | The useful cases are either CTDB_CURRENT_NODE, in which case ctdb_get_pnn() does the job, or a PNN, which is... ummm... a PNN! :-) This works because parse_nodestring() validates PNNs. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 7b3f7eea2465efb099a2faf3e42174bc97b13a16)
* tools/ctdb: Improve auto-all settings for some commandsMartin Schwenke2013-08-221-8/+8
| | | | | | | | | | | | | | * ipreallocate is cluster-wide so should not be auto-all * enablescript, disablescript, getreclock, setreclock, natgwlist can all be auto-all without issues * xpnn, ipiface a local-only so don't work with -n, so might as well not be auto-all Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 123a4677528cb46bee1c6dad8a5162eba9880bc1)
* tools/ctdb: Fix message in showban when node is bannedMartin Schwenke2013-08-211-1/+2
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 5cdad2b8ebd71a5e458c301d00eac00a211feeb3)
* tools/ctdb: Reimplement ban/unban using update_flags_wait_and_ipreallocate()Martin Schwenke2013-08-211-61/+18
| | | | | | | | | This has the side effect of making these commands more resilient to control timeouts. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 0fe79662e20e347d9e1cb12a42cd356e33572402)
* tools/ctdb: Factor out common pattern used in disable/enable/stop/continueMartin Schwenke2013-08-211-119/+76
| | | | | | | | | Now we will only have one set of bugs. :-) Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 444521c852749558f39dc6131acce9e47eefd489)
* tools/ctdb: Factor, simplify and improve robustness of ipreallocate codeMartin Schwenke2013-08-211-45/+32
| | | | | | | | | | | | | | | | | | | Having other functions call control_ipreallocate() suggests that the it might look at the argv/argv arguments that are passed. This is not the case. Change the callers so they call the new ipreallocate() function instead. Broadcast CTDB_SRVID_TAKEOVER_RUN to all connected nodes. Inactive nodes will ignore it. This is safe since we only want 1 reply. If we didn't get a response, we don't actually care if there's no active recovery master - just fire, wait, retry, ... Ignore some failures on the basis that they might be transient, so it is probably worth retrying. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 4bf0b1c9d21986eecb7682f935bd6154c65533cc)
* tools/ctdb: Use ctdb_get_pnn() to get PNN of the current nodeMartin Schwenke2013-08-211-29/+5
| | | | | | | | This has already been stored at connect time and can't fail. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit d8eb2e7fdd7645719370dad4f2faa5c3fffa8249)
* tools/ctdb: Increase default control timeout to 10 secondsMartin Schwenke2013-08-141-1/+1
| | | | | | | | | The current 3 second timeout is arbitrary and users trip over it sometimes. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit b49c4f39666d5b1596213bf41bcdc47ed3c327ae)
* tools/ctdb: Only print the hot records with non-zero hopcountAmitay Isaacs2013-07-301-0/+9
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 049d9beb3783482490e6273a434ccbad23f85f0a)
* tools/ctdb: Allow killtcp to read connections from standard inputMartin Schwenke2013-07-291-1/+111
| | | | | | | | | | | This will allows eventscripts to send information about multiple tcp connections to a single "ctdb killtcp" command, saving the overhead of setting up a client connection per tcp connection. Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit af5aa369c266430fe912df0c26116b68bac3572e)
* Print deleted nodes as wellSumit Bose2013-07-111-1/+12
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 0930a3b806977555509c3228726e2250aef1f971)
* tools/ctdb: Fix the format of DB statistics outputAmitay Isaacs2013-07-101-9/+14
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 594c421f90ce132c75fbd985872114e4967f92b5)
* tools/ctdb: Add "force" option to "recover" commandMartin Schwenke2013-06-281-2/+9
| | | | | | | | | | At the moment there is no easy way to force a recovery when attempting to reproduce certain classes of bugs. This option is added without documentation because it is dangerous until the bugs are fixed! :-) Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 4f87925a287f612a6ab3b5da1a387a31c7bea28f)
* tools/ctdb: Do not exit prematurely on control timeout if retrying in a loopAmitay Isaacs2013-06-201-5/+4
| | | | | | | | | | | | This avoids premature exits from "ctdb stop" and "ctdb continue" due to intermittent control (e.g. getpnn, getnodemap) timeouts. This needs a proper fix to distinguish between timeout and failure conditions and take appropriate action. Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit c48583fd238496a81ddc46a21892f0b49559036a)
* ctdbd: Update the get_tunable code to return -EINVAL for unknown tunableMartin Schwenke2013-05-241-1/+1
| | | | | | | | | Otherwise callers can't tell the difference between some other failure (e.g. memory allocation failure) and an unknown tunable. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 03fd90d41f9cd9b8c42dc6b8b8d46ae19101a544)
* ctdbd: Add new runstate CTDB_RUNSTATE_FIRST_RECOVERYMartin Schwenke2013-05-241-1/+1
| | | | | | | | | | | | | | This adds more serialisation to the startup, ensuring that the "startup" event runs after everything to do with the first recovery (including the "recovered" event). Given that it now takes longer to get to the "startup" state, the initscript needs to wait until ctdbd gets to "first_recovery". Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit ed6814ff0a59ddbb1c1b3128b505380f60d7aeb7)
* tools/ctdb: "ctdb runstate" now accepts optional expected run state argumentsMartin Schwenke2013-05-241-1/+24
| | | | | | | | | | | | | | | | | | | | | If one or more run states are specified then "ctdb runstate" succeeds only if ctdbd is in one of those run states. At the moment, if the "setup" event fails then the initscript succeeds but ctdbd exits almost immediately. This behaviour isn't very friendly. The initscript now waits until ctdbd is in "startup" or "running" run state via the use of "ctdb runstate startup running", meaning that ctdbd has successfully passed the "setup" event. The "setup" event code in 00.ctdb now waits until ctdbd is in the "setup" run state before proceeding via the use of "ctdb runstate setup". Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 4a2effcc455be67ff4a779a59ca81ba584312cd6)
* tools/ctdb: New command runstate to print current runstateMartin Schwenke2013-05-241-0/+21
| | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit bf20c3ab090f75f59097b36186347cedb1c445d4)
* tools/ctdb: Remove duplicate command definition for "sync"Martin Schwenke2013-05-241-2/+1
| | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 9e7b7cd04adc5e66e2ffa4edf463a682aaea379b)
* tools/ctdb: Fix racy ipreallocate codeAmitay Isaacs2013-05-231-63/+22
| | | | | | | | | | | | | | | | | This code tried to find the recovery master and send an ipreallocate request to that node. When a node is stopped, this code asked the stopped node for recovery master. Stopped node does not have up-to-date information on the current recovery master. So ipreallocate requests were sent to the wrong node and ignored by that node which is not the recovery master. Send ipreallocate request to all active nodes. That way we guarantee that the current recovery master will see it and respond to it. Signed-off-by: Amitay Isaacs <amitay@gmail.com> Pair-Programmed-With: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 0577ce3c68e4febf49a1ef5093e918db9d5ec636)
* build: Rename version.h to ctdb_version.hAmitay Isaacs2013-05-231-1/+1
| | | | | | | | This avoids clash with version.h from Samba tree. Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit d18fcfff674e876abde8d51afec92d9c4a090d2f)
* tools/ltdbtool: Fix handling of -e optionAmitay Isaacs2013-04-081-3/+6
| | | | | | | | Also, include description of -e option in usage. Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 35264e42ade4676468cf7713fa339c784e932953)
* fix a typoVolker Lendecke2013-03-121-1/+1
| | | | | | Reviewed-by: Michael Adam <obnox@samba.org> (This used to be ctdb commit 98abd344342a011a8599411deae79f94abc09541)
* tools/ctdb: delip no longer fails if IP can not be movedMartin Schwenke2013-02-271-76/+83
| | | | | | | | | | | | Moving the IP is an optimisation so should not cause failure. Refactor and simplify the retry-move-IP into new function try_moveip(). Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 5402f85dde045576cbaf64e01c68e28ed52204e8)
* tools/ctdb: Fix a compiler warningMartin Schwenke2013-02-041-1/+1
| | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit d1ec06d30148e6fd344625a2fbf1c22391bd908a)
* tools/ctdb: Add setdbseqnum command to set __db_sequence_number__Amitay Isaacs2013-01-091-0/+86
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit efaac27a9ed52ed0f436c7e194013fd06e8b02b3)
* tools/ctdb: Re-factor code to check if db exists given name or idAmitay Isaacs2013-01-091-212/+110
| | | | | | | | | | | | Most of the commands related to database operations can now use the common code (db_exists()) to refer to database with either name or id. In addition to return db_id for db_name, the function returns all the flags set for the database. Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit ca6e7eccc90f2869c220231666bf284798342bce)
* tools/ctdb: Add pdelete command to delete a record from persistent databaseAmitay Isaacs2013-01-091-0/+67
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit d23adec89b69e7c6f96c8e1417ef4ca4c9edc57e)
* tools/ctdb: Do not use function return value as pnnAmitay Isaacs2012-11-141-3/+5
| | | | | | | | | This fixes the wrong code where same variable 'ret' is used to track the pnn and the return value of a function call. Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 718233c445cd6627ab3962b6565c2655f1f8efd0)
* tool/ctdb: Always support ctdb version command, don't make it optionalAmitay Isaacs2012-10-301-8/+3
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit f8af7d8de76e68e5c4bde15f832a31ce9107e8c7)
* tools/ctdb: Merge recoverd log handling into getlog/clearlogMartin Schwenke2012-10-221-102/+63
| | | | | | | | | | We don't need extra commands for these. Also, allow a default value of NOTICE for the getlog level. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 7197e600f46f2d1638f6c45c0149f109ea25a47c)
* tools/ctdb: Add log ringbuffer handling for recoverdMartin Schwenke2012-10-221-0/+73
| | | | | | | | | | | This adds commands rdgetlog and rdclearlog These are analogous to getlog and clearlog but operate on the logs for the recovery daemon. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit ef55e06192819d840c09b65741bab737223ac34c)
* ctdbd: Replace lockwait with locking API and remove ctdb_lockwait.cAmitay Isaacs2012-10-201-10/+0
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 2126795153dacb255e441abcb36ee05107b6282a)
* tools/ctdb: Display the locking statisticsAmitay Isaacs2012-10-201-14/+44
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit e24b5bf283736624b387b0364d7200212bb3054b)
* tools/ctdb_diagnostics: Add "ctdb listvars" outputMartin Schwenke2012-10-181-0/+1
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 2d75a04ba9a2e87a0dcb9bf778c58e335af1871c)
* tools/ctdb: Remove extra header from natgwlist -Y outputMartin Schwenke2012-10-181-4/+0
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 59520c9785d113ad5063eb5fbe42a9efc7e30076)
* tools/ctdb: Free the event contextMartin Schwenke2012-10-021-0/+1
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit dc2a8c638bd74b9f1dd75339cd2ae2f32ffa18a8)
* tools/ctdb: Clean up control_natgw()Martin Schwenke2012-09-281-63/+69
| | | | | | | | | | * Factor out repeated code into new function find_natgw() * Support both machine and human readable output * Use libctdb Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit a56ec75edd1705b0539513d396d311f0e80a3bf5)
* tools/ctdb: Convert some commands over to libctdbMartin Schwenke2012-09-281-19/+24
| | | | | | | | | control_getcapabilities(), control_lvs(), control_lvsmaster() updated to use ctdb_getcapabilities(), ctdb_getnodemap() as appropriate. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit c30ec02615183ecf9b412ad415bf1abd859aec45)
* tools/ctdb: Remove redundant filtering loop in control_natgwlist()Martin Schwenke2012-09-281-3/+0
| | | | | | | | | This used to catch trailing blank lines. However, these are caught just as effectively by the whitespace filtering in the loop below. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 7b75a3bb722dc86139b1a07a0100d08c34620b91)
* tools/ctdb: natgwlist output is either human readable or machine readableMartin Schwenke2012-09-281-12/+28
| | | | | | | | | The first line is currently human readable and the rest is machine readable. This doesn't make sense. Do one or the other... Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit b29d5bbaa7048291c4b3a39bf12e04f0436f67da)
* tools/ctdb: Factor out printing of the machine readable status headerMartin Schwenke2012-09-281-4/+8
| | | | | | | | It is already in 2 places and we might use it in another. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 12a0a7a208d1c8fa8991894200d1dc133f3a2d1a)
* tools/ctdb: NAT gateway code should use CTDB_NATGW_NODESMartin Schwenke2012-09-281-1/+1
| | | | | | | | ... not NATGW_NODES. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 2da7730dc06153173778ab14e228960e72ff8a86)
* ctdb tool: recmaster command might as well be auto-allMartin Schwenke2012-07-301-1/+1
| | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 076282622fcb2663d378e0c90ed0d9c19f73c005)
* tools/onnode: Add -P option to push files to given nodesMartin Schwenke2012-07-301-13/+36
| | | | | | | | | | | | | | A list of files is given rather than a command. These files are pushed to the specified nodes. Quoting is fragile/broken so filenames with spaces won't work - you win some, you lose some. :-) All of the other onnode options should work together with this option. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit aed9b98ddbbf3e81de4f7257a10676565f7d7507)
* Remove tevent_loop_allow_nesting()Amitay Isaacs2012-07-161-1/+0
| | | | | | Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 538c68d0e83e14f0000981ee06408b8f0035be37)
* ctdb: use correct "persistent" state for ctdb_attach in "ctdb cattdb"Michael Adam2012-07-031-1/+1
| | | | | | | | | Originally, "ctdb cattdb" attached explicitly as non-persistent, which is now forbidden for persistent databases by the server. Pair-Programmed-With: Gregor Beck <gbeck@sernet.de> (This used to be ctdb commit 85a367005bd669309bb7e532b60d27621110180d)
* Add new command to find which interface is located onRonnie Sahlberg2012-06-201-0/+22
| | | | (This used to be ctdb commit f07376309e70f5ccdb7de8453caacc71b451ab48)