svn commit: samba r22775 - in branches: SAMBA_3_0/source SAMBA_3_0/source/include SAMBA_3_0/source/lib SAMBA_3_0_26/source SAMBA_3_0_26/source/include SAMBA_3_0_26/source/lib

vlendec at samba.org vlendec at samba.org
Thu May 10 10:42:14 GMT 2007


Author: vlendec
Date: 2007-05-10 10:42:13 +0000 (Thu, 10 May 2007)
New Revision: 22775

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22775

Log:
For the cluster code I've developed a wrapper around tdb to put 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

Added:
   branches/SAMBA_3_0/source/include/dbwrap.h
   branches/SAMBA_3_0/source/lib/dbwrap.c
   branches/SAMBA_3_0/source/lib/dbwrap_file.c
   branches/SAMBA_3_0/source/lib/dbwrap_tdb.c
   branches/SAMBA_3_0_26/source/include/dbwrap.h
   branches/SAMBA_3_0_26/source/lib/dbwrap.c
   branches/SAMBA_3_0_26/source/lib/dbwrap_file.c
   branches/SAMBA_3_0_26/source/lib/dbwrap_tdb.c
Modified:
   branches/SAMBA_3_0/source/Makefile.in
   branches/SAMBA_3_0/source/include/includes.h
   branches/SAMBA_3_0_26/source/Makefile.in
   branches/SAMBA_3_0_26/source/include/includes.h


Changeset:
Sorry, the patch is too large (1607 lines) to include; please use WebSVN to see it!
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22775


More information about the samba-cvs mailing list