summaryrefslogtreecommitdiffstats
path: root/source/include/dbwrap.h
Commit message (Collapse)AuthorAgeFilesLines
* first cut at adding full transactions for ctdb to samba3Andrew Tridgell2008-08-131-6/+0
|
* dbwrap: add dbwrap_tdb2 backendStefan Metzmacher2008-04-121-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
* Fix a confusing variable nameVolker Lendecke2008-03-281-2/+2
|
* dbwrap: add db_open_trans()Stefan Metzmacher2008-03-271-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>
* build: don't autogenerate prototypes for util_tdb and dbwrap anymore.Michael Adam2008-03-251-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
* Add transactions to the dbwrap APIVolker Lendecke2008-03-101-0/+3
| | | | | Only filled in for tdb so far, for rbt it's pointless, and ctdb itself needs to be extended
* Merge CTDB-related fixes from samba-ctdb 3.0 branch ↵Alexander Bokovoy2008-01-161-0/+1
| | | | | (http://samba.org/~tridge/3_0-ctdb) Signed-off-by: Alexander Bokovoy <ab@samba.org>
* Add dbwrap bystring service routinesVolker Lendecke2007-12-101-0/+5
|
* Cosmetic fixVolker Lendecke2007-11-221-3/+3
|
* r23784: use the GPLv3 boilerplate as recommended by the FSF and the license textAndrew Tridgell2007-10-101-2/+1
|
* r23779: Change from v2 or later to v3 or later.Jeremy Allison2007-10-101-1/+1
| | | | Jeremy.
* r23220: Add traverse_read to dbwrapVolker Lendecke2007-10-101-0/+4
|
* r22775: For the cluster code I've developed a wrapper around tdb to put ↵Volker Lendecke2007-10-101-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