[SCM] CTDB repository - branch master-readonly-records created - ctdb-1.10-447-g01314c2

Ronnie Sahlberg sahlberg at samba.org
Mon Aug 22 19:39:23 MDT 2011


The branch, master-readonly-records has been created
        at  01314c2cb3a480917d6a632b83c39f0a48bba0e7 (commit)

- Log -----------------------------------------------------------------
commit 01314c2cb3a480917d6a632b83c39f0a48bba0e7
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Tue Aug 23 10:41:52 2011 +1000

    ReadOnly: Check the readonly flag instead of whether the tdb pointer is NULL or not

commit a47ae3c2c81c62989bc99455459069149c853bbd
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Tue Aug 23 10:37:20 2011 +1000

    ReadOnly: add description of readonly records

commit 7af255551f058d1f6bfdd38ca603e7a19d1bb7ba
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Aug 17 16:14:57 2011 +1000

    ReadOnly: clear out the tracking record once a revoke is completed

commit 1b7d42c3425e39dd2a1c4460e8a01fb1ea4a513c
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Thu Jul 21 15:59:37 2011 +1000

    ReadOnly: When the client wants a readwrite lock but the local node is the dmaster and also have delegations active we must send a CALL to the local daemon to trigger it to revoke the delegations

commit 6d5d79367f7d04e2a9a6ad5d8be70d609b764629
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Thu Jul 21 15:58:56 2011 +1000

    ReadOnly: Change the update_record test tool to use the new fetchlock routine that can do either normal or readonly fetchlock

commit 72a6e77fe56a4a6d11b1d02fa049b6dd347ac0f1
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:47:15 2011 +1000

    ReadOnly: Add a test tool that requests a readonly delegation in a loop

commit 29c77c249d0454057ce28003e018e126c7c01513
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:43:55 2011 +1000

    ReadOnly: Add a test tool to fetch a record, requesting a readonly delegation and lock the record once

commit 6fccc902bce21fa6ff13ed08ee3341bbf8be39f2
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:37:37 2011 +1000

    ReadOnly: Add clientside code to fetch readonly records

commit 8551420fb331dd2a897f4619278a981fcefb96e8
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:31:44 2011 +1000

    ReadOnly: Add a ctdb_ltdb_fetch_readonly() helper function

commit e7cbf5b5d03cc26a73a92066a651f8eab73624b8
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:17:29 2011 +1000

    ReadOnly: Add handlign of readonly requests readwrite requests, delegations and revoking of delegation to the processing loop for CALL requests coming in from a local client via domain socket

commit 78f2c2ea70e6270cec59db7c3f174a511bf608a9
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 15:13:47 2011 +1000

    ReadOnly: Add processing for ReadOnly delegation requests and revoke 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.

commit 530a78aa05910beeca0867c4dbe226d4ce73f946
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 14:25:29 2011 +1000

    ReadOnly: Once recovery has finished, make sure to free all revoke child processes and trigger the destructors for all deferred calls to re-queue the original packets to the input packet processing function

commit 2a4e9e69850d64dd8aef695f587ebe04393a688f
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 14:23:05 2011 +1000

    ReadOnly: When releasing all deferred calls that blocked during revoke of 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

commit a3f54a556e97170eedf43708d58dd32446ca5840
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 14:21:04 2011 +1000

    ReadOnly: Add a new flag to call request packet to indicate that the client wants a readonly delegation

commit 7d575ee92c95bc4aab78a33bc1aac7ff0811ab3a
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Tue Aug 23 10:27:31 2011 +1000

    ReadOnly: Add a function to start a revoke of all delegations for a record.
    This triggers a child process to be created to perform the actual potentially blocking calls that are required.

commit cc6f78efcfa3b8caeffbd68018e6dfbf81488dce
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 13:49:17 2011 +1000

    ReadOnly: Add functions to register CALLs to a context used to handle 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.

commit b935e83255aeb3754b2fd37cf5611e02f7283514
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 13:30:12 2011 +1000

    ReadOnly: Add an extra flag to ctdb_call_local to specify whether we want to write the record and header back to the tdb (for example we do when performing dmaster migrations)

commit b5520933b9922d6af6f59f535824e1cdacb9f774
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 13:20:32 2011 +1000

    ReadOnly: After recovering all databases, make sure to clear out the tracking database used to track delegations and revoke. This is because the recovery will implicitely result in a revoke of all delegations.

commit 502f86f79944df4bac9094f716e54110c511dc24
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 13:15:48 2011 +1000

    ReadOnly: Add "readonly" flag to the ctdb_db_context to indicate if this 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.

commit 9985a97e11688f3f688bb84e1180fd57c42077f4
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 13:08:21 2011 +1000

    ReadOnly: After performing a recovery, clear out all flags related to readonly delegations and revoke

commit d01b9716d3e50f4c6d102e8411f0401b0f499699
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Tue Aug 23 10:23:18 2011 +1000

    Add the missing "persistent" argument to db_exist()
    The API for this function has changed since the 1.2 branch where readonly locks are being merged from

commit d2342b680a3a8160d903d12550b86ee21c8b277d
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 12:30:33 2011 +1000

    ReadOnly: Add a new command 'ctdb cattdb'. This fucntion differs from 'ctdb 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.

commit 5eaa9a8683babac27f9f0144ff4cb5364fcd54f6
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 12:21:33 2011 +1000

    ReadOnly: Add printing of the record flags when we are traversing a database to print its content.

commit 875b0bede217547b51f02648b6a28a3c98b6b949
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 12:17:27 2011 +1000

    ReadOnly: Add 4 new record flags to handle read only delegation and revoking of delegations

commit 151b25798f2a2c182fc9557c1c1ea0f3ef0ad3fe
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 12:13:53 2011 +1000

    ReadOnly: add a new test tool that does a fetchlock on a record, then bunps the RSN by 10 and writes the new content to the record as sprintf("%d", rsn)

commit 74a5b3d7bafd8827a4ee80095fde5798263821e4
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 12:06:37 2011 +1000

    ReadOnly: Add clientside functions to send the UPDATE_RECORD control

commit bfdeda30ee0e359f06dd5714864f8beae22b0736
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 11:50:14 2011 +1000

    ReadOnly: Add test tool to validate the functions to manipulate and enumerate the bitmap of nodes to where we have readonly delegations

commit d10084e62d37674bb8d9e31d457fd23e050545be
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 11:39:50 2011 +1000

    ReadOnly: Add helper functions to manipulate a TDB_DATA as a bitmap for nodes that we are tracking as having a readonly delegation

commit c7196d16e8e03bb2a64be164d15a7502300eae0e
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Jul 20 11:27:05 2011 +1000

    ReadOnly records: Add a new RPC function FETCH_WITH_HEADER.
    This function differs from the old FETCH in that this function will also fetch the record header and not just the record data

-----------------------------------------------------------------------


-- 
CTDB repository


More information about the samba-cvs mailing list