Age | Commit message (Collapse) | Author | Files | Lines |
|
(This used to be commit 48d1aa4fcf6a323e3e6a14825f83cd20e3fc3a26)
|
|
(This used to be commit f90a698387c53508862eb6359bd4d1fba1d2b4b0)
|
|
Michael
(This used to be commit b97acdc67b1a55529e69bb7b2b78a317a34b1eba)
|
|
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 eb524df0a52783de6c94a11b44f268e0f26fbb2c)
|
|
Add TDB_VOLATILE as open_flag to activate the per-hashchain dead record
optimization.
(This used to be commit 868cdb1781fe94afbc1658e72bf06de20193bcd7)
|
|
* 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 7f415d12239fc67eb2c7894c6359b9507fe122c6)
|
|
The proper error condition is (ret == -1) instead of
(ret != number_of_byte_told_to_write).
Michael
(This used to be commit 4c3c6363f860ec01d3c789ef8ee2aa3eb77000dc)
|
|
(This used to be commit 40c0919aaa9c1b14bbaebb95ecce53eb0380fdbb)
|
|
(This used to be commit 84b468b2f8f2dffda89593f816e8bc6a8b6d42ac)
|
|
Jeremy.
(This used to be commit 59ba128cb61e77a830ddd8b8e1d5d0fd00f99736)
|
|
say "locks chain and returned record", not
"and returns record"
Jeremy.
(This used to be commit fa880e6cc16024f14d10cdc8120ce67bfd1d2eb6)
|
|
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 fa548ad75e945ae4d167baffb87140c90cba268c)
|
|
this ensures that having the global lock also implies the transaction
lock
(This used to be commit 9dbb2633d7781fcc5d15b175ef36bfda5eb199bb)
|
|
(This used to be commit a88ab4fa3a07c31bc45c612043f9e096f384eda4)
|
|
(This used to be commit bffb8f88006fd2530cad270df642d9a23a01b34b)
|
|
(This used to be commit a0ff739bcab32065d9d3957eb1d93f7791f84f04)
|
|
metze
(This used to be commit 8f24f6b38e967075589529a08c68a1a56f9f0499)
|
|
(This used to be commit ff78be0be4ef67ed25bfb837bd8a7bf4105367fb)
|
|
thanks to Ted T'so for pointing this out
(This used to be commit 6921f2f7093bbb6c236f16947072026303e58439)
|
|
metze
(This used to be commit 902a76ca705f07c61f86a9ef1346583ba9d3157d)
|
|
samba-technical@samba.org. If
you do a tdb_set_max_dead(tdb, n), then for this tdb a delete operation will
only mark a record as dead and re-use it if a new record is created. The
parameter n allows for at most n dead records per hash chain. If this number
is exceeded, all dead records are put on the central freelist.
Volker
(This used to be commit 98a27ab28a3cd554e370a9a0e3652f4dea8749e9)
|
|
(This used to be commit afe7d7855841066b88859976ac748cbf438a9a9f)
|
|
Not as bad
as not doing it at all, but needs fixing. Also simplify the logic, I had
missed the "goto out" at the end of the function.
Volker
(This used to be commit ed30a0ff602d0a1d4409bee4faf12b6979b5f4b8)
|
|
succeeded. Found while testing the brlock seqnum patch.
Tridge, please check!
Volker
(This used to be commit e518c68fc5446304611d096ac2e3cab744734fc3)
|
|
in-memory
mirrors of the hash chain locks to a dynamically allocated one.
Jeremy, I count on you to revert it if the build farm freaks out, it's after
midnight here :-)
Volker
(This used to be commit 7b5db2e472c7e27231fa432d3930789e708abd09)
|
|
Should help us validate tdb's against corruption.
Jeremy.
(This used to be commit bd0710fa09799cb496b1f9f365c57c3b542445f3)
|
|
tdbutil.c is Samba specific, so should not be part of the generic tdb
library
(This used to be commit 979dd24f5e44605fc1603b690913b8c31be7478f)
|
|
(This used to be commit c9d9d79c34e8a36a6f684b173b1cc861330adc5c)
|
|
this is in preparation of a merge in the other direction
(This used to be commit db3211079fd594aa03c3b9bb3eb6ad86bdd32837)
|
|
call which does a read lock on all chains. These will be used to make
ldb searches more efficient
(This used to be commit de664ec1f8cf179f1d650563272c0de3f7636e2b)
|
|
(This used to be commit 025b142ff268498cfb36fc0e7e9e25a2c5963d38)
|
|
emacs compile mode (hint, paste to a file, and compile as "cat
filename").
This allowed me to fix nearly all the warnings for a IA_64 SuSE build
very quickly.
(This used to be commit eba6c84efff735bb0ca941ac4b755ce2b0591667)
|
|
- replacing rename() is pointless - all platforms have it (and the
#define of rename breaks some code)
- use system/locale.h in snprintf.c
- fix passwd.h for initgroups
- stdlib is in replace.h, not needed elsewhere
- fix the initgroups replacement
- fix mapping of dl functions to rep_*
(This used to be commit 57cd0ca176387d6a3acabf9fedeef4f2a3a3dad7)
|
|
isolation of our portability environment from the main code, and also
simplifies the includes system (no separate #ifdef _SAMBA_BUILD for
tdb. ldb etc now)
(This used to be commit 77d1a468e06290aba789e2f3affc769fc5159a21)
|
|
* Move dlinklist.h, smb.h to subsystem-specific directories
* Clean up ads.h and move what is left of it to dsdb/
(only place where it's used)
(This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
|
|
First step at fixing the build breakage with the groupmapping test. On Linux,
F_RDLCK is defined to 0, for example NetBSD has it at 1.
Still does not work fully though. Still investigating.
metze
(This used to be commit af08e56442367b5d803f61b8554d85e2fe0ce7e9)
|
|
HAVE_PREAD_DECL/HAVE_PWRITE_DECL
and common/io.h already defines pread and pwrite as static if they are not.
remove unneded defines
(This used to be commit 941f680453a081d51f6499f9b5dc06c7e6640334)
|
|
This clearly links the log function with its private pointer, and
makes the argument list for tdb_open_ex a bit shorter.
Andrew Bartlett
(This used to be commit 5d5503e8d8a10ead3ef21a5ffda52cadb9a07727)
|
|
metze
(This used to be commit 249bf24a40f78aab181a4cce8c42902859e43238)
|
|
as part of ldb.
This allows tdb failures to be passed all the way up to Samba's DEBUG
system, which allowed easier debugging.
Unfortunately I had to extend the tdb API, as the logging function
didn't have a context pointer.
I've worked over the 'debug levels' in TDB. Most of them were 0,
which didn't seem right, as some were trace-like messages. We didn't
see any of these previously, except when accessing TDB directly.
Andrew Bartlett
(This used to be commit 58898092c1ce043f6d698db5065f372b79109e22)
|
|
(This used to be commit 2898df2cee22f2d478440e9576bec15140909e45)
|
|
allow C++
keywords. Change "private" -> "private_data".
Volker
(This used to be commit 047671567173e808fece41485bbeaaeebab7d4a2)
|
|
(This used to be commit 5f1d52f232051324082b840f29dd7719a9328bd5)
|
|
(This used to be commit 9b867d2acffdfdcd5dc1dd5341db19daf11b5e96)
|
|
in the build farm. msync() is failing.
(This used to be commit 4c3f3c414135c2b8fa9ea11a156246b56285b84f)
|
|
for an extremely lightweight test to see if a tdb has possibly
changed.
(This used to be commit f325ba605ccceca63712c0f2c98961e35e437b3d)
|
|
Jeremy.
(This used to be commit d2e9d5b34baee90060ee9131b3da903309625a56)
|
|
(This used to be commit 1113d4caa7bea1a7ffb9a50f42c5672bc1d452b4)
|
|
more agressively coalesce entries in the linked list of the undo
log. The second is to ensure that writes during a transaction into the
hash table don't cause the size of the undo log linked list to grow.
These optimisations don't affect Samba much, but they make a huge
difference to the use of ldb in kde
(This used to be commit a37d9434d1fa181fd3d060ad032ee4ec5135fc52)
|
|
to msync/mmap not changing the mtime of the file. This patch ensures
that for successfully completed transactions we update the mtime.
I don't do this on all tdb writes as its too expensive, but doing it
just on transactions is bearable, as those cost quite a lot anyway.
(This used to be commit b2934732dd62f705f59c124f19460c5436a9a422)
|