summaryrefslogtreecommitdiff
path: root/source3/lib/tdb/common
AgeCommit message (Collapse)AuthorFilesLines
2008-08-13Attempt to fix bug 5684Volker Lendecke1-1/+1
With the ctdb checkin dde9f3f006 tdb optimized out write lock checks for write-enabled transaction. Sadly, this also removed the possibility to ever remove dead records left over from tdb_delete calls within a transaction. Tridge, please check this! Did dde9f3f006 have any reason beyond performance optimizations? Thanks, Volker (This used to be commit 3f884c4ae36f3260e63626bdd4989d9258ae6497)
2008-05-20Convert in_transaction to a bool. Add the same fix VolkerJeremy Allison1-4/+9
used for tdb_traverse() to tdb_traverse_read(). Jeremy. (This used to be commit bda0f03fb3fa8a7b14d4f54bee7076d691cad44f)
2008-05-20Fix nesting tdb_traverse in a transactionVolker Lendecke1-3/+8
Calling tdb_traverse inside a transaction led to the transaction lock being held indefinitely. This was caused by the tdb_transaction_lock/unlock inside tdb_traverse: The transaction code holds the global lock at offset TRANSACTION_LOCK. The call to tdb_transaction_lock does nothing because the transaction_lock is already being held. tdb_transaction_unlock inside tdb_wrap resets tdb->have_transaction_lock but does not release the kernel-level fcntl lock. transaction_commit later on does not release that fcntl lock either, because tdb->have_transaction_lock was already reset by tdb_transaction(). This patch does fix that problem for me. An alternative would be to make tdb->have_transaction_lock a counter that can cope with proper nesting, maybe in other places as well. Volker (This used to be commit 80e700e3bd73f2ffa38046bdcba7f532e25198ef)
2008-02-08merge tdb changes from ctdbAndrew Tridgell1-33/+47
(This used to be commit 92503eb60ea877a5dbf19acec7d7102fcf2923e7)
2008-02-07merge growing tdb for tdb_wipe_all() fix from ctdbAndrew Tridgell1-0/+43
(This used to be commit eaba373747e7de5f911b25952ee396ab1bae75d9)
2008-01-31merged tdb transaction fixAndrew Tridgell1-0/+3
(This used to be commit 1a1c7954368a7f168a57f86f4f857cf70258e37a)
2008-01-18merged changes from v4-0-testAndrew Tridgell2-43/+43
(This used to be commit 8c89d60924b0380231da834cd3c097b4f8cdc369)
2008-01-16Don't try ftruncate when the tdb is opened read-onlyVolker Lendecke1-0/+1
Tridge, Jeremy, please check! Thanks, Volker (This used to be commit e4f46d527411c54e8f26c05033b744c751810c32)
2008-01-16Next try to fix the max dead record calculationVolker Lendecke1-1/+1
(This used to be commit 4f95c58040f46f343f55f9a5db2655a5e3b62c00)
2008-01-16Fix some C++ warningsVolker Lendecke1-2/+5
(This used to be commit 625241c4773ae5c80dd0cb0c07a86aff633c1ede)
2008-01-16Fix a missing prototype warningVolker Lendecke1-0/+1
(This used to be commit 871cee04f26da97756804b38acfd366b6011dc9e)
2008-01-15Port from ctdb:Jeremy Allison1-16/+6
minor fix to transaction_write_existing: tridge. Jeremy. (This used to be commit 874425c8f680fb2f737b46a3177b239e69302af5)
2008-01-14samba3 already has tdb_validate()Andrew Tridgell1-42/+0
(This used to be commit 9f002eeff9bcf33a00e5641cb14338e866a17afe)
2008-01-14merged tdb fix from ctdb treeAndrew Tridgell2-0/+122
(This used to be commit c91e9c785b5bf4b0c479edf8eb33da22bf615387)
2008-01-13Fix the max_dead_record calculationsVolker Lendecke1-4/+1
(This used to be commit 4aaf4e7e73a5c7fa97ef730fbff5c7cb12df2d6c)
2008-01-11Sync tdb with the tdb changes in ctdb. Spoke to tridge aboutJeremy Allison8-217/+353
this. Fixes insidious problem with order n^2 freelist merging. Jeremy. (This used to be commit c6609c042b128e7d63eb64cfdfb0f6b65cb59d76)
2008-01-09Fix the max_dead_record calculationsVolker Lendecke1-4/+1
(This used to be commit 2a5c53220a5cc2b4a80fc7c6cb38e87789c5e797)
2007-11-28Add a warning for a potential bug I've run intoVolker Lendecke1-0/+3
(This used to be commit 223352e32372f1b055298cfc6f2770043a845e3d)
2007-11-22Add a missing prototypeVolker Lendecke1-0/+1
(This used to be commit 89e2984a84951373d0e93fe06d0c69c8a62bc777)
2007-11-06Fix const warning.Jeremy Allison1-1/+1
Jeremy. (This used to be commit ecc2555197860ae56726724ec824fc149d2d831c)
2007-11-06Keep the tdb code in sync with Samba4.Jeremy Allison5-32/+174
Mainly this is the svn changes : ------------------------------------------------------------------------ r23238 | tridge | 2007-05-30 01:15:49 -0700 (Wed, 30 May 2007) | 6 lines merged transaction lock changes from ctdb this ensures that having the global lock also implies the transaction lock ------------------------------------------------------------------------ r22832 | tridge | 2007-05-13 18:00:06 -0700 (Sun, 13 May 2007) | 3 lines merged the latest tdb changes from ctdb to Samba4 Jeremy. (This used to be commit ab11c0055761e97ba32a8c3ec4fa6f8763a262cd)
2007-11-06Fix bug where tdb lock call interrupted withJeremy Allison2-0/+14
an alarm sig would not terminate and could lead to runaway smbd processes. Thanks to Dave Daugherty @ Centrify for pointing this out to us. Jeremy. (This used to be commit ef8da1698371c95495add53df81a978df709c88d)
2007-10-12offsetof() is always present as shown in someStefan Metzmacher1-4/+0
libreplace testing. metze (This used to be commit 4f084efd6ac39a8347d5cfc73b727940e40150cf)
2007-10-10[GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.Gerald (Jerry) Carter1-0/+4
(This used to be commit 5c6c8e1fe93f340005110a7833946191659d88ab)
2007-10-10r24743: Fix build warning.Günther Deschner1-1/+1
Guenther (This used to be commit 579fb55b7556dc90b42f77d5fc9e9c31f34974e5)
2007-10-10r24738: Fix one more use of pwrite in tdb code in the spirit of r23972 and ↵Michael Adam1-6/+25
r23977. Michael (This used to be commit a3506f291abfb8a9516b79c10c79841a7391651e)
2007-10-10r24341: Make libreplace provide offsetof.Jelmer Vernooij1-4/+0
(This used to be commit 4a5fa715a6af281282092644817599f79806981d)
2007-10-10r24340: Use standard data type uint32_t rather than tdb-specific u32.Jelmer Vernooij8-59/+56
(This used to be commit 26d1430283bd4ae8b8a84f3253e33417d509c1a4)
2007-10-10r24049: Some more 64-bit warningsVolker Lendecke1-2/+4
(This used to be commit eabe796e464e5fe10d0f4cca1362985c529f5a5b)
2007-10-10r23980: Fix one more use of pwrite in expand_file.Michael Adam1-1/+10
Michael (This used to be commit de0ef9134650e3e7cc5b5cfec9e8dd8510bd6677)
2007-10-10r23979: Fix another occurence of (written != requested) as anMichael Adam1-5/+22
error condition to write. This is in tdb_new_database. Fix one call to tdb_new_database in tdb_open_ex to not overwrite the newly propagated errno (typically ENOSPC). Michael (This used to be commit 24fed55d72a4922bfd3ddba61449fbae01365feb)
2007-10-10r23977: Im prove the pwrite-patch to tdb_expand_file of r23972:Michael Adam1-7/+20
* prevent infinite loops due to 0 bytes written: try once more. if we still get 0 as return, set errno to ENOSPC and return -1 (error) * replace int by correct types (ssize_t and size_t). * print a warning log message in case "written < requested to write" usually this means, that the next call to pwrite will fail with return value -1 and set errno accordingly. Note that the former error condition "written != requested to write" is not a correct error condition of write/pwrite. If this is due to an error, a subsequent call to (p)write will reveal the cause (typically "no space left on device" - ENOSPC). Michael (This used to be commit 5b8d53dfe1872621bf28c8351d87bfc53ef6e66b)
2007-10-10r23972: Fix a bug in pwrite error detection in tdb_expand_file():Michael Adam1-3/+3
The proper error condition is (ret == -1) instead of (ret != number_of_byte_told_to_write). Michael (This used to be commit e3af95f0983e9f92c10a80ee4f15a0cd718a4728)
2007-10-10r23798: updated old Temple Place FSF addresses to new URLAndrew Tridgell11-22/+11
(This used to be commit c676a971142d7176fd5dbf21405fca14515a0a76)
2007-10-10r23790: LGPLv3+ conversion for our LGPLv2+ library codeAndrew Tridgell11-11/+11
(This used to be commit 1b78cace504f60c0f525765fbf59d9cc6506cd4d)
2007-10-10r23590: Fix realloc leak on failure case from Jim Meyering <jim@meyering.net>.Jeremy Allison1-1/+5
Jeremy. (This used to be commit d7b39e4534d85c84e8b24668ab7d7a93d5647c23)
2007-10-10r23371: Fix the misleading comment I added - it really *should*Jeremy Allison1-2/+2
say "locks chain and returned record", not "and returns record" Jeremy. (This used to be commit bf951e3d7f0310cc624abab11a7fb04c50770425)
2007-10-10r23370: Traverse in tdb wasn't consistently using theJeremy Allison1-8/+10
travlocks.lock_rw for lock read/write types, it was sometimes using it (tdb_next_lock) and sometimes explicitly using F_WRLCK instead. Change this to consistently use travlocks.lock_rw only. I'm pretty sure about this fix (else I woudn't be checking this in :-) but tridge and Volker please review. Jeremy. (This used to be commit d0b64567630ec02eb437aa713847bb23a8be8a60)
2007-10-10r23161: Add TDB_VOLATILE as open_flag to activate the per-hashchain dead recordVolker Lendecke1-0/+4
optimization. (This used to be commit 945f73fa39ba6f2b637379ac20d52b4d0306d77f)
2007-10-10r22317: add tdb_ prefix to non static functionStefan Metzmacher3-8/+8
metze (This used to be commit 56e31d60c672689e934fbed2794c7c54cf874b11)
2007-10-10r22316: merge from samba4:Stefan Metzmacher1-2/+2
this function should be static metze (This used to be commit f722fd32da56aabca2fffe243e89177bc23e2be7)
2007-10-10r22315: move tdbback.c content into tdbbackup.cStefan Metzmacher1-227/+0
and make the functions static. also use libreplace headers in tdbbackup.c metze (This used to be commit 1ca12b1c9e7e8267fa13a40ebeb2bdcd199237de)
2007-10-10r22249: move tdb code to lib/tdb/ as in samba4Stefan Metzmacher12-0/+4417
metze (This used to be commit c7def92a9c2e17c90061ef17bc14e36250574e85)