summaryrefslogtreecommitdiff
path: root/source3/tdb/tdb.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r2979: Fix incorrect locks/unlocks in tdb_lockkeys()/tdb_unlockkeys().Jeremy Allison1-4/+4
Spotted by Taj Khattra <taj.khattra@gmail.com>. Jeremy. (This used to be commit 365b203164bc813579013afb5dbb74f3604906c9)
2007-10-10r2239: Fixup formatting errors in TDB_LOG calls. Add printf attribute ↵Jim McDonough1-1/+1
support to tdb log functions. (This used to be commit 67c737118faaeae9bd723516ea60657046e135a8)
2007-10-10r2131: Fixup format string. The magic value format specifier was missing, soJim McDonough1-1/+1
the logged offset was really the magic value, and the true offset was never displayed. (This used to be commit 30da4e777191c557226d5615cee5a9e28b198a8b)
2007-10-10r2032: If you're selecting a hash algorithm for tdb, you need to do it at ↵Jeremy Allison1-8/+4
open time, it doesn't make sense anywhere else. Jeremy. (This used to be commit d7ea1ea8fb3420ca1ad8d95acdc43313898200ff)
2007-10-10r2026: Simplify statcache to use an in-memory tdb. Modify tdb to useJeremy Allison1-26/+31
a customer hash function for this tdb (yes it does make a difference on benchmarks). Remove the no longer used hash.c code. Jeremy. (This used to be commit 3fbadac85b8cad89b93d295968e99c38c8677575)
2004-03-28merge tdb changes from samba4 - this means tdb is now under the LGPL, as ↵Andrew Tridgell1-19/+26
discussed and agreed previously (This used to be commit 9d1a08d65c4235a2a3941bba5b71631c4c35c9b7)
2004-02-19Fix the "too many fcntl locks" scalability problem raised by tridge.Jeremy Allison1-9/+23
I've now tested this in daemon mode and also on xinetd and I'm pretty sure it's working. Jeremy. (This used to be commit 14dee038019b11300466b148c53515fc76e5e870)
2004-02-01Don't log an error in tdb_brlock() if a non-blocking lock returns EAGAIN -Tim Potter1-4/+8
it's supposed to do that. (This used to be commit 2423a459471136d701b498ff0db797c70c6d0fce)
2004-01-08In tdb_allocate(), we would create a new record by writing a local variableAndrew Bartlett1-0/+2
'newrec' into the tdb. This was not initialised, so valgrind warned about it. (Note: valgrind only makes sense on tdbs with 'mmap = no' in your smb.conf) Andrew Bartlett (This used to be commit c9f9d6d3171d720b4ec0ba6af8c0c8ab178cd98b)
2003-10-24Add some debugs in the error paths for tdb_brlock() to help track downTim Potter1-1/+6
a locking problem on HPUX. (This used to be commit 2d03d81f753fd819086d24a92eec5503f70246a0)
2003-10-18fixed spinlocks in tdbAndrew Tridgell1-2/+4
I still wouldn't recommend them, but at least they now work (This used to be commit 76992e7d1655ed15d61254f2be651db020ec4f5e)
2003-09-06Change some internal interfaces to cause the hash (which is *expensive*)Jeremy Allison1-18/+31
to be calculated less often. No change to external interface. Jeremy. (This used to be commit 155c9ce6663df9963c7563adf78a232d3650b7b5)
2003-06-20fixed a bug found by volkerAndrew Tridgell1-1/+2
when we are traversing a readonly dababase we should not try to cleanup the pending-delete records (This used to be commit f327c06108cd1a9146f4c24aa4274997be0b4fb4)
2003-04-14Comment syncup.Tim Potter1-0/+21
(This used to be commit 72e7290daa0e9765aab846a5312fc20d18a55a76)
2003-03-13Merge of tdb_unlockeys() crash fix.Tim Potter1-0/+2
(This used to be commit 0eee7a4b1ea437b5f1376fc9c7063b117f5027c6)
2003-03-11When opening an existing DB, don't require the hash_size specified toMartin Pool1-2/+1
the open call to be the same as that of the existing tdb. The specified hash_size is only used if the tdb needs to be (re)created. With this patch in place, tdbtool can open the printing tdbs, which are created with a hash_size of 5000. Before it would fail with EIO. (This used to be commit 7090d9f6939b3c6334fba40b0741f8f899aba31a)
2003-02-20Ensure tdb error code is set for corrupt and i/o errors before callingJeremy Allison1-1/+24
the log function. This allows the log function to take action. Jeremy. (This used to be commit fcaacb5fabdf78dd6b6a7fe5ff5300d9e2ff8d75)
2003-02-04Ensure we overwrite a tdb if the hash size changes.Jeremy Allison1-1/+2
Jeremy. (This used to be commit b300696cb5c65ab239caa257987628f8e18c8761)
2003-01-11Added tdb_append() call. Efficiently adds to an entry. Used by new messagingJeremy Allison1-12/+137
code. Also added torture tests for it. Jeremy. (This used to be commit 724cefabb03a3db8b5d3691974241d3109593c27)
2002-11-09Add chainlock_read functions to get a read lock. Used in *massively*Jeremy Allison1-1/+11
contended tdb's (and I've got one :-). Jeremy. (This used to be commit d4b795e6a451d9abaa4a928cf5d34e12b2babc2d)
2002-11-07Merge of scalable printing code fix... Needs testing.Jeremy Allison1-1/+2
Jeremy. (This used to be commit d030df76439c72825d68410211e62090438cef54)
2002-10-04Add a timeout to tdb_lock_bystring(). Ensure we never have more thanJeremy Allison1-0/+4
MAX_PRINT_JOBS in a queue. Jeremy. (This used to be commit 9fe3c0b90d4bff2217e3cb5a34b4683ca314c06e)
2002-09-26Make explicit the difference between a tdb key with no data attached, andJeremy Allison1-2/+11
a non existent entry. Stop a malloc(0) being called in the first case. Jeremy. (This used to be commit 7b841247bda028ce654fb760b932f08ec61c494c)
2002-09-25sync'ing up for 3.0alpha20 releaseGerald Carter1-0/+18
(This used to be commit 65e7b5273bb58802bf0c389b77f7fcae0a1f6139)
2002-07-15updated the 3.0 branch from the head branch - ready for alpha18Andrew Tridgell1-2/+24
(This used to be commit 03ac082dcb375b6f3ca3d810a6a6367542bc23ce)
2002-04-10Added Shirish's client side caching policy change.Jeremy Allison1-1/+2
Jeremy. (This used to be commit 16015c07eab2e57fa3771051e3e08fde21757cfa)
2002-04-07better check of called function's returnSimo Sorce1-57/+125
tdbtorture say it's ok (This used to be commit af0fa4cf7c229fb908063bfcc3cbb214dae5ed0e)
2002-03-01Various comment fixes from Rafal Szczesniak <mimir@diament.ists.pwr.wroc.pl>Andrew Bartlett1-1/+1
(This used to be commit 3bf4b42771d115500941be374bfdd9b8c2fdba4a)
2002-02-27Memory leak on error condition fixed by Kian Win <codegrunt@rubbercookie.com>.Jeremy Allison1-0/+1
Jeremy. (This used to be commit 9dae1398b45515e5b93de038ec18df297d73026d)
2002-01-30Removed version number from file header.Tim Potter1-2/+1
Changed "SMB/Netbios" to "SMB/CIFS" in file header. (This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
2002-01-22Raise log level of warning produced when the open() of the tdb fails.Tim Potter1-1/+1
Sometimes an open error is OK. (This used to be commit 5fb3be62910faf91e0e8381ba91f314f2092cb8e)
2002-01-09Move SAFE_FREE into tdb.c to stop exporting it into tdb.h namespace.Jeremy Allison1-0/+5
Jeremy. (This used to be commit 4f703b84cd7f258ae0169d52ca761b9404ccb348)
2002-01-02debug statement fixups.Jeremy Allison1-31/+21
Merge SAFE_FREE fix in tdb from 2.2, and IRIX fix. Jeremy. (This used to be commit eb6607466565bcd5b3800492d0bc1ae8a44da4f6)
2001-12-31more irix -64 portability fixesAndrew Tridgell1-1/+2
(This used to be commit 65e857b36e170e3ecd78bf6695ae73342e9c04cd)
2001-12-13Must check against -1 for fcntl error check.Jeremy Allison1-4/+4
Jeremy (This used to be commit 1d2504b5c76bf23ac49a401adce8a49f193bc22c)
2001-12-11Fix up warnings. Make tdb_openXX() names const.Jeremy Allison1-2/+2
Jeremy. (This used to be commit 9e3581827d91f5fd33fabd5ad4c9a79d63355731)
2001-12-10Doc.Martin Pool1-1/+3
(This used to be commit 6c684c89a4e6e212476335ee57c3b616015598f8)
2001-12-10Allow for internal databases which may have no name.Martin Pool1-5/+5
(This used to be commit caa08bb56e2dc533c3754f90f6139fe04a317545)
2001-12-10Log more error messages.Martin Pool1-0/+1
(This used to be commit 8118676f780a80662f28c3cc1a74cc12d0e1ef51)
2001-12-10Log more error messages.Martin Pool1-2/+12
(This used to be commit b50e566ab93e9a8068e26c9c902db81311cb394c)
2001-12-10Allocate tdb name up front in case log functions want to use it.Martin Pool1-6/+5
(This used to be commit a228c7efcc06b901ca51a6da77f8a52b77912f55)
2001-12-10tdb_open_ex: More cleanups: just dynamically allocate the TDB_CONTEXTMartin Pool1-14/+27
up front, rather than working on the stack and then copying across. (This used to be commit b1d7d800680f77e02185bb237982b284414aac1e)
2001-12-10Refactor code to check whether already open into its own function.Martin Pool1-8/+21
(This used to be commit 52ef112e10dbe273b6e66c4a5081f468e4630b7d)
2001-12-10tdb_open_ex should always "goto fail" in case of error, rather thanMartin Pool1-1/+2
just returning. I don't think this would leak at the moment, but it's an accident waiting to happen. (This used to be commit fe901ec194d1b8ef94386b097e72508075eb8a54)
2001-12-10Doc.Martin Pool1-0/+4
(This used to be commit bb6c0df4bc4eb8ce789886ec17e434dc27bb34b0)
2001-12-10tdb_open_ex: Continue previous refactoring so that we consistentlyMartin Pool1-12/+12
just say "tdb" not "&tdb". (This used to be commit fac685d30f58c25d73d1690ed008c797291558e4)
2001-12-10tdb_open_ex: Refactor to use a pointer to tdb, rather than an autoMartin Pool1-57/+58
tdb, to be consistent with the rest of the code. (This used to be commit d159415049c25caeaf01b6bc947da3472c54d1f8)
2001-12-04Put back changes to set errno, which seem to do no harm.Martin Pool1-12/+42
(This used to be commit 3dbb5dfcfb29671f136d1ed6c865362eaf027446)
2001-12-04undoMartin Pool1-156/+69
(This used to be commit fc176f15f27686049453552219b56b9de33ceffa)
2001-12-04Implement suggestion from tridge to leave the old tdb_open interfaceMartin Pool1-2/+9
as it was, and add tdb_open_ex() which takes a log callback. I guess this makes more sense since it's a public interface. (This used to be commit 391a65395e6cdc0300f81eb1072a3366cacd1203)