5 This is a simple database API. It was inspired by the realisation that in Samba
6 we have several ad-hoc bits of code that essentially implement small databases
7 for sharing structures between parts of Samba.
9 The interface is based on gdbm. gdbm couldn't be use as we needed to be able to
10 have multiple writers to the databases at one time.
12 @section tdb_download Download
14 You can download the latest releases of tdb from the
15 <a href="http://samba.org/ftp/tdb">tdb directory</a> on the samba public source
18 You can download the latest code either via git or rsync.
20 To fetch via git see the following guide:
22 <a href="http://wiki.samba.org/index.php/Using_Git_for_Samba_Development">Using Git for Samba Development</a>
23 Once you have cloned the tree switch to the master branch and cd into the source/lib/tdb directory.
25 To fetch via rsync use these commands:
28 rsync -Pavz samba.org::ftp/unpacked/standalone_projects/lib/tdb .
29 rsync -Pavz samba.org::ftp/unpacked/standalone_projects/lib/replace .
32 and build in tdb. It will find the replace library in the directory above
35 @section tdb_bugs Discussion and bug reports
37 tdb does not currently have its own mailing list or bug tracking system. For now,
39 <a href="https://lists.samba.org/mailman/listinfo/samba-technical">samba-technical</a>
40 mailing list, and the <a href="http://bugzilla.samba.org/">Samba bugzilla</a> bug
44 @section tdb_compilation Compilation
46 add HAVE_MMAP=1 to use mmap instead of read/write
47 add NOLOCK=1 to disable locking code
49 @section tdb_testing Testing
51 Compile tdbtest.c and link with gdbm for testing. tdbtest will perform
52 identical operations via tdb and gdbm then make sure the result is the
55 Also included is tdbtool, which allows simple database manipulation
58 tdbtest and tdbtool are not built as part of Samba, but are included