summaryrefslogtreecommitdiff
path: root/source3/include/dbwrap.h
AgeCommit message (Collapse)AuthorFilesLines
2008-04-12dbwrap: add dbwrap_tdb2 backendStefan Metzmacher1-0/+8
This backend can be used untill ctdb knows about real transactions. It stores a master tdb in a shared location and a readonly copy on the local harddisk. Reads are always on the local tdb and writes always on both. Change notify messages are send to all message context, which ask for them. With the notifies it's possible to just update the changed records, instead of copying all records (which is the fallback). You need to configure: dbwrap:use_tdb2=yes dbwrap_tdb2:master directory=/some/shared/path dbwrap_tdb2:local directory=/var/lib/samba metze (This used to be commit aa6230de0d5f1875aa8c12c4fc017d3a40f90890)
2008-03-28Fix a confusing variable nameVolker Lendecke1-2/+2
(This used to be commit 32c992e9573c9af34cd142393287e2f3538d2dd9)
2008-03-27dbwrap: add db_open_trans()Stefan Metzmacher1-0/+5
This should be used when transactions are wanted. For now it's just a wrapper of db_open(), but this will change. metze Signed-off-by: Stefan Metzmacher <metze@samba.org> (This used to be commit 74a070b8a24fea1009e557f711b76fc14e8961dc)
2008-03-25build: don't autogenerate prototypes for util_tdb and dbwrap anymore.Michael Adam1-0/+21
Stick to hand-written headers (that are there anyways). Add some missing prototypes to util_tdb.h and dbwrap.h. I did not bother to add a header for each single dbwrap backend open function but put the prototypes for the open functions into the central dbwrap.h. Michael (This used to be commit edf4dbed27a3c63c04e8110e75cdb76e31627eb6)
2008-03-10Add transactions to the dbwrap APIVolker Lendecke1-0/+3
Only filled in for tdb so far, for rbt it's pointless, and ctdb itself needs to be extended (This used to be commit 0a55e018dd68af06d84332d54148bbfb0b510b22)
2008-01-16Merge CTDB-related fixes from samba-ctdb 3.0 branch ↵Alexander Bokovoy1-0/+1
(http://samba.org/~tridge/3_0-ctdb) Signed-off-by: Alexander Bokovoy <ab@samba.org>(This used to be commit 0c8e23afbbb2d081fc23908bafcad04650bfacea)
2007-12-10Add dbwrap bystring service routinesVolker Lendecke1-0/+5
(This used to be commit 1e214b536b0628db299d701839e62a4ac52727c9)
2007-11-22Cosmetic fixVolker Lendecke1-3/+3
(This used to be commit 8d8cb8f9ccbc013b97c252d27c3af4e2eb10d56a)
2007-10-10r23784: use the GPLv3 boilerplate as recommended by the FSF and the license textAndrew Tridgell1-2/+1
(This used to be commit b0132e94fc5fef936aa766fb99a306b3628e9f07)
2007-10-10r23779: Change from v2 or later to v3 or later.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
2007-10-10r23220: Add traverse_read to dbwrapVolker Lendecke1-0/+4
(This used to be commit b38dc5ffdfe9fdc2879c57dc181815f06b4747fe)
2007-10-10r22775: For the cluster code I've developed a wrapper around tdb to put ↵Volker Lendecke1-0/+51
different database backends in place dynamically. The main abstractions are db_context and db_record, it should be mainly self-describing, see include/dbwrap.h. You open the db just as you would open a tdb, this time with db_open(). If you want to fetch a record, just do the db->fetch() call, if you want to do operations on it, you need to get it with fetch_locked(). I added dbwrap_file.c (not heavily tested lately) as an example for what can be done with that abstraction, uses a file per key. So if anybody is willing to shape that up, we might have a chance on reiserfs again.... :-) This abstraction works fine for brlock.tdb, locking.tdb, connections.tdb and sessionid.tdb. It should work fine for the others as well, I just did not yet get around to convert them. If nobody loudly screams NO, then I will import the code that uses this soon. Volker (This used to be commit e9d7484ca246cfca4a1fd23be35edc2783136ebe)