summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| | * ReadOnly: Add a ctdb_ltdb_fetch_readonly() helper functionRonnie Sahlberg2011-08-232-0/+37
| | | | | | | | | | | | (This used to be ctdb commit 8551420fb331dd2a897f4619278a981fcefb96e8)
| | * ReadOnly: Add handlign of readonly requests readwrite requests, delegations ↵Ronnie Sahlberg2011-08-231-0/+47
| | | | | | | | | | | | | | | | | | and revoking of delegation to the processing loop for CALL requests coming in from a local client via domain socket (This used to be ctdb commit e7cbf5b5d03cc26a73a92066a651f8eab73624b8)
| | * ReadOnly: Add processing for ReadOnly delegation requests and revoke ↵Ronnie Sahlberg2011-08-231-14/+116
| | | | | | | | | | | | | | | | | | | | | | | | requests to the processing loop for CALL packets we receive from different nodes. This implements the ReadOnly and ReadWrite request processing, delegation and revoking of delegations for all requests coming in across the network from a remote node. (This used to be ctdb commit 78f2c2ea70e6270cec59db7c3f174a511bf608a9)
| | * ReadOnly: Once recovery has finished, make sure to free all revoke child ↵Ronnie Sahlberg2011-08-231-0/+4
| | | | | | | | | | | | | | | | | | processes and trigger the destructors for all deferred calls to re-queue the original packets to the input packet processing function (This used to be ctdb commit 530a78aa05910beeca0867c4dbe226d4ce73f946)
| | * ReadOnly: When releasing all deferred calls that blocked during revoke of ↵Ronnie Sahlberg2011-08-231-1/+1
| | | | | | | | | | | | | | | | | | all previous delegations, add a 1 second grace/delay for any new readonly delegation requests so that the read-write fetch-lock porcess has a chance to make progress (This used to be ctdb commit 2a4e9e69850d64dd8aef695f587ebe04393a688f)
| | * ReadOnly: Add a new flag to call request packet to indicate that the client ↵Ronnie Sahlberg2011-08-231-1/+2
| | | | | | | | | | | | | | | | | | wants a readonly delegation (This used to be ctdb commit a3f54a556e97170eedf43708d58dd32446ca5840)
| | * ReadOnly: Add a function to start a revoke of all delegations for a record.Ronnie Sahlberg2011-08-232-0/+268
| | | | | | | | | | | | | | | | | | This triggers a child process to be created to perform the actual potentially blocking calls that are required. (This used to be ctdb commit 7d575ee92c95bc4aab78a33bc1aac7ff0811ab3a)
| | * ReadOnly: Add functions to register CALLs to a context used to handle ↵Ronnie Sahlberg2011-08-232-0/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | deferal of processing of CALL commands. Once the contexts are freed, the deferred calls are re-issued to the input packet processing functions again. This is needed when/if a CALL can not currently be processed by the main engine due to the record being locked down for revoking of all delegations. The data is passed through several layers of callbacks, and finally a timed event callback to ensure that the processing of the packet will be restarted again at the topmost eventloop, avoinding event loop nesting. (This used to be ctdb commit cc6f78efcfa3b8caeffbd68018e6dfbf81488dce)
| | * ReadOnly: Add an extra flag to ctdb_call_local to specify whether we want to ↵Ronnie Sahlberg2011-08-233-8/+12
| | | | | | | | | | | | | | | | | | write the record and header back to the tdb (for example we do when performing dmaster migrations) (This used to be ctdb commit b935e83255aeb3754b2fd37cf5611e02f7283514)
| | * ReadOnly: After recovering all databases, make sure to clear out the ↵Ronnie Sahlberg2011-08-231-0/+11
| | | | | | | | | | | | | | | | | | tracking database used to track delegations and revoke. This is because the recovery will implicitely result in a revoke of all delegations. (This used to be ctdb commit b5520933b9922d6af6f59f535824e1cdacb9f774)
| | * ReadOnly: Add "readonly" flag to the ctdb_db_context to indicate if this ↵Ronnie Sahlberg2011-08-232-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | database supports readonly operations or not. Add a private lock-less tdb file to the ctdb_db_context to use for tracking delegarions for records Assume all databases will support readonly mode for now and se thte flag for all databases. At later stage we will add support to control on a per database level whether delegations will be supported or not. (This used to be ctdb commit 502f86f79944df4bac9094f716e54110c511dc24)
| | * ReadOnly: After performing a recovery, clear out all flags related to ↵Ronnie Sahlberg2011-08-231-0/+5
| | | | | | | | | | | | | | | | | | readonly delegations and revoke (This used to be ctdb commit 9985a97e11688f3f688bb84e1180fd57c42077f4)
| | * Add the missing "persistent" argument to db_exist()Ronnie Sahlberg2011-08-231-1/+2
| | | | | | | | | | | | | | | | | | The API for this function has changed since the 1.2 branch where readonly locks are being merged from (This used to be ctdb commit d01b9716d3e50f4c6d102e8411f0401b0f499699)
| | * ReadOnly: Add a new command 'ctdb cattdb'. This fucntion differs from 'ctdb ↵Ronnie Sahlberg2011-08-231-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | catdb' in that 'cattdb' will always traverse the local tdb file only, while 'catdb' does a cluster traverse. Since some record flags may differ between nodes in the cluster when read only delegations are in use, cattdb is needed when you need to know the exact flag settings on the current node itself. (This used to be ctdb commit d2342b680a3a8160d903d12550b86ee21c8b277d)
| | * ReadOnly: Add printing of the record flags when we are traversing a database ↵Ronnie Sahlberg2011-08-231-0/+9
| | | | | | | | | | | | | | | | | | to print its content. (This used to be ctdb commit 5eaa9a8683babac27f9f0144ff4cb5364fcd54f6)
| | * ReadOnly: Add 4 new record flags to handle read only delegation and revoking ↵Ronnie Sahlberg2011-08-231-0/+4
| | | | | | | | | | | | | | | | | | of delegations (This used to be ctdb commit 875b0bede217547b51f02648b6a28a3c98b6b949)
| | * ReadOnly: add a new test tool that does a fetchlock on a record, then bunps ↵Ronnie Sahlberg2011-08-232-1/+165
| | | | | | | | | | | | | | | | | | the RSN by 10 and writes the new content to the record as sprintf("%d", rsn) (This used to be ctdb commit 151b25798f2a2c182fc9557c1c1ea0f3ef0ad3fe)
| | * ReadOnly: Add clientside functions to send the UPDATE_RECORD controlRonnie Sahlberg2011-08-232-0/+76
| | | | | | | | | | | | (This used to be ctdb commit 74a5b3d7bafd8827a4ee80095fde5798263821e4)
| | * ReadOnly: Add test tool to validate the functions to manipulate and ↵Ronnie Sahlberg2011-08-232-1/+142
| | | | | | | | | | | | | | | | | | enumerate the bitmap of nodes to where we have readonly delegations (This used to be ctdb commit bfdeda30ee0e359f06dd5714864f8beae22b0736)
| | * ReadOnly: Add helper functions to manipulate a TDB_DATA as a bitmap for ↵Ronnie Sahlberg2011-08-232-0/+51
| | | | | | | | | | | | | | | | | | nodes that we are tracking as having a readonly delegation (This used to be ctdb commit d10084e62d37674bb8d9e31d457fd23e050545be)
| | * ReadOnly records: Add a new RPC function FETCH_WITH_HEADER.Ronnie Sahlberg2011-08-233-2/+59
| | | | | | | | | | | | | | | | | | This function differs from the old FETCH in that this function will also fetch the record header and not just the record data (This used to be ctdb commit c7196d16e8e03bb2a64be164d15a7502300eae0e)
| * | Drop loglevel for a tevent message from FATAL to ERRORRonnie Sahlberg2011-09-081-1/+1
| | | | | | | | | | | | | | | | | | CQ S1028400 (This used to be ctdb commit 3ce1d3d6c8b8fd3097b8efd2c75797ed7682a562)
| * | Merge remote branch 'ddiss/master_pmda_and_client_timeouts'Ronnie Sahlberg2011-09-0825-46/+1054
| |\ \ | | | | | | | | | | | | (This used to be ctdb commit 7bebfc7bad8f36e54003b8e25372fdaf54836e21)
| | * | pmda: handle struct latency_counter and add num_recoveriesDavid Disseldorp2011-09-063-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rebase the CTDB PMDA from 1.0.114 to master: - Add tevent and ctdb_protocol includes - Handle latency metrics now stored under struct latency_counter - Add new metric for the num_recoveries counter (This used to be ctdb commit 2165a6f5117a71f9f97f46be9708fa34c037e17c)
| | * | pmda: document in README how to add a new metricDavid Disseldorp2011-09-061-1/+21
| | | | | | | | | | | | | | | | (This used to be ctdb commit b63333fb81aadc451df47c0c3c038e6165f0eac2)
| | * | pmda: Use CTDB_PATH macro for default socket pathDavid Disseldorp2011-09-061-24/+30
| | | | | | | | | | | | | | | | | | | | | | | | Also includes some code cleanup changes. (This used to be ctdb commit 80ad2979804f5bba29020ace46e114a45fa6cb66)
| | * | pmda: Pull ctdb statistics once per fetchDavid Disseldorp2011-09-061-69/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently ctdb statistics are pulled in the PMDA fetch callback, which results in a CTDB_CONTROL_STATISTICS call for each metric. Do this once per fetch instead, and have the per-metric callbacks pull data from the last counter cache. (This used to be ctdb commit 137b498c75c55c966999cd788f12ed9010cfed3a)
| | * | pmda: Attempt reconnects while ctdbd is unavailableDavid Disseldorp2011-09-063-51/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attempt to reconnect to ctdbd on fetch while it is unreachable. We must provide our own queue callback wrapper, as ctdb_client_read_cb() exits on transport failure. (This used to be ctdb commit 28df6fbf1273b8d095a2bc38dca6a6c35c5c31bd)
| | * | pmda: Initial ctdb pmda check-inDavid Disseldorp2011-09-0610-2/+857
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CTDB Performance Metrics Domain Agent (PMDA) is compiled when Performance Co-Pilot (PCP) header files are present. The CTDB PMDA periodically requests runtime counters from ctdbd (similar to ctdb statistics) and exports these values via PCP for capture and charting etc. (This used to be ctdb commit fe7f69d6fc37661c2f1caa11de4ed3a7940d0a2f)
| | * | client: flag local node in ctdb -Y status outputDavid Disseldorp2011-09-061-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Regular "ctdb status" output flags which node is the local node, do the same for machine readable output. (This used to be ctdb commit 3885141f37724b3dea61b45fbac38489ec356588)
| | * | client: add timeout argument to ctdb_attachDavid Disseldorp2011-09-0613-26/+42
| | | | | | | | | | | | | | | | | | | | | | | | Rather than using a fixed 2 second CTDB_CONTROL_GETDBPATH timeout. (This used to be ctdb commit 9e178671560cb95121e11d718a76b05380ecd6c5)
| | * | client: add req timeout argument to ctdb_cmdline_clientDavid Disseldorp2011-09-0611-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following connection to the local ctdbd, ctdb_cmdline_client() currently issues a CTDB_CONTROL_GET_PNN request with a fixed 3 second timeout. The ctdb cmd line client accepts a --timelimit argument for specifying a per request timeout, pass this value through to ctdb_cmdline_client() for use as a CTDB_CONTROL_GET_PNN request timeout. (This used to be ctdb commit 0634d0305f42f17048b6830733767e8dc300e11c)
| * | | Merge branch 'master' of 10.1.1.27:/shared/ctdb/ctdb-masterRonnie Sahlberg2011-09-065-0/+88
| |\ \ \ | | |/ / | |/| | | | | | (This used to be ctdb commit a3e8784bb107f7acd2a95913c1e6def52ce96105)
| | * | Interface monitoring: add a event to trigger every 30 seconds to check that ↵Ronnie Sahlberg2011-09-062-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all interfaces referenced by the public address list actually exists. This will make it much easier to root-cause problems such as S1029023 when an external application deleted the interface while it is still is in use by ctdbd. (This used to be ctdb commit 9abf9c919a7e6789695490e2c3de56c21b63fa57)
| | * | Check interfaces: when reading the public addresses file to create the vnn listRonnie Sahlberg2011-09-065-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | check that the actual interface exist, print error and fail startup if the interface does not exist. (This used to be ctdb commit cd33bbe6454b7b0316bdfffbd06c67b29779e873)
| * | | Merge branch 'master' of ssh://git.samba.org/data/git/ctdbRonnie Sahlberg2011-09-051-1/+1
| |\ \ \ | | |/ / | |/| | | | | | (This used to be ctdb commit 32320ee278d1eec9aef18b400c0ddaa445d4211e)
| | * | tools/ctdb: fix a typo in a debug messageMichael Adam2011-09-021-1/+1
| | | | | | | | | | | | | | | | (This used to be ctdb commit 9bded1832179fbadc8bc94c5328ffa6c45a6d2ab)
| * | | Add a tunable "AllowClientDBAttach" with default value 1.Michael Adam2011-09-053-1/+9
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | When set to 0, clients will not be able to attach to databases via the db_attach control. This might can be useful for maintenance where ctdb should be kept running but clients should not be able to modify databases. (This used to be ctdb commit ddfeecda87955b4e46777599f678e6926d37f4c4)
| * | tests:ctdb_fetch_lock_once we must link with @POPT_OBJ@ in case -lpopt is ↵Ronnie Sahlberg2011-09-021-2/+2
| | | | | | | | | | | | | | | | | | not available (This used to be ctdb commit cdbc800a776f213cfd0ed543cee85b0d1714a186)
| * | tests: Link ctdb_fetch_lock_once with @TDB_OBJ@ not -ltdb so we dont create ↵Ronnie Sahlberg2011-09-021-2/+2
| | | | | | | | | | | | | | | | | | an unneeded dependency on having a standalone tdb library installed (This used to be ctdb commit 9118b9cf1634866266fbf0a9bf857a622f994a1a)
| * | New version 1.11Ronnie Sahlberg2011-09-011-0/+2
| | | | | | | | | | | | (This used to be ctdb commit ee9bf1565383bcca70950e9c20fe6b4d0181ce8d)
| * | Merge remote branch 'martins/tests'Ronnie Sahlberg2011-09-0124-50/+586
| |\ \ | | | | | | | | | | | | (This used to be ctdb commit 71080adfe0828e15bf2f4b0bee7d52e06fff3449)
| | * | Tests - eventscripts - add some multievent testsMartin Schwenke2011-08-317-0/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running "./run_tests -s simple/* multievent/*" results in a stupid summary. Will need to work on that... Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 999c68948da1492ac4d728c6bf79ad4921d9e840)
| | * | Tests - eventscripts - allow "ctdb scriptstatus" output to be primedMartin Schwenke2011-08-312-15/+32
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit f527ffb55b514b5cb4df3471a0e17ab71307e8a1)
| | * | Merge branch 'eventscripts' into testsMartin Schwenke2011-08-311-3/+31
| | |\ \ | | | | | | | | | | | | | | | (This used to be ctdb commit 1c9dadf02ca649e3f09d9edd778bf13e001aa849)
| | * | | Tests - eventscripts - ctdb stub - implement scriptstatus, tweaksMartin Schwenke2011-08-301-9/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit edc34d01a1ad83b1335c976593a006166b196569)
| | * | | Tests - eventscripts - formatting tweak in simple_test()Martin Schwenke2011-08-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 698af79545986cf788686feb06c4677a10eec770)
| | * | | Tests - eventscripts - new function simple_test_event()Martin Schwenke2011-08-301-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just like simple_test() but 1st arg is the event name. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 69e240e15488e228c0232fdc8804af778cb4e6fc)
| | * | | Tests - eventscripts - output format tweaksMartin Schwenke2011-08-301-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 8f8dc5636436db28ce7d0edd706a4adf2624e71b)
| | * | | Tests - eventscripts - add extra filename format for multi-event testsMartin Schwenke2011-08-301-7/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | $event may not be set so we need to test for it. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 80f14e590242b14829c6309ee908af0f2d33be1e)