Age | Commit message (Collapse) | Author | Files | Lines |
|
was the initial cause of the connections database becoming corrupt.
Note that this bug only happens when doing deletions within a
traversal, which is why it has only showed up now
- added delete within traversal testing to tdbtorture
- added a lot more logging to tdb
(This used to be commit 6e1277df9d964c615a3ad876d3b89ff8132081c1)
|
|
of messages from the tdb code into the Samba DEBUG() system
just call tdb_open_log() instead of tdb_open() to enable this on
any tdb
(This used to be commit 3ab770484c6775df2c1a6f69427ebe656702c96c)
|
|
(This used to be commit ba106b9b07b23c3dc1b40c8feb10cff173faa07a)
|
|
can't be merged don't fail the operation, instead just add
it to the free list anyway
added logging to tdb
(This used to be commit dda086fdf92fded016afc785f7965a375faae5aa)
|
|
ENOSPC could be very bad
(This used to be commit b94cfb6843dc7fc985917395d3e0d953501b9197)
|
|
This needs testing !
Tidied up tabs in tdb.c.
Jeremy.
(This used to be commit 0852465053d0c1a23b6cfe6097267291b0595ef8)
|
|
(This used to be commit ce6598c465e3d1e26592af9b90eb271ee837f290)
|
|
(This used to be commit 13bf966cb8ed8df6b02018dceff94c275def8200)
|
|
Jeremy.
(This used to be commit 4c6a8273c6dd3e2aeda5a63c4a62aa55bc133099)
|
|
Jeremy.
(This used to be commit d6889b1954bd863fd04cf43fb25f178b1d1ab67f)
|
|
Jeremy.
(This used to be commit fc76681812b1469208ad6c8847afdfc68bc6db49)
|
|
source/include/proto.h
- make proto
source/printing/nt_printing.c
source/rpc_server/srv_spoolss_nt.c
- Fix for the overwriting of printerdata entries when WinNT and
Win2k are modifying printer parameters on PCL printers. Turns out
that Win2k creates a printer with a NULL devmode entry and then
expects to set it on *OPEN* (yes this is insane). So we cannot
return a "default" devmode for a printer - and we must allow an
open to set it.
source/tdb/tdb.c
- Show freelist in an easier format. Show total free.
- When storing a new record, allocate memory for the key + data
before the tdb_allocate() as if the malloc fails a (sparse) hole
is left in the tdb.
source/tdb/tdbtool.c
- Show freelist in an easier format. Show total free.
source/tdb/Makefile
- cleaned up Makefile dependancies
source/smbd/lanman.c
- Fix for Win9x corrupting it's own parameter string.
source/printing/printfsp.c
source/printing/printing.c
source/rpc_server/srv_spoolss_nt.c
source/smbd/close.c
- Added normal close parameter into print_fsp_end() which treats an
abnormal close as error condition and deletes the spool file.
(This used to be commit 025f7a092ad258ff774e3f5e53737f8210cc8af6)
|
|
(This used to be commit cef7f58ac5cc0c96e1027c7e5ecbb3fb72cb94b6)
|
|
struct tdb_traverse_lock tl = { tdb->travlocks.next, 0, 0 };
The IRIX compiler complained that the first initialization value was not a
constant and errored out. Here's what it looks like now:
struct tdb_traverse_lock tl = { NULL, 0, 0 };
int ret, count = 0;
/* This was in the initializaton, above, but the IRIX compiler
* did not like it. crh
*/
tl.next = tdb->travlocks.next;
That worked.
Chris -)-----
(This used to be commit e651d1d642cd1bfac11bec81a30915b95d4424c8)
|
|
When chaining together long lines of bloody "if" statements, which should
logically be separated, and one of them allocates memory, remember to
*free* it *WHETHER OR NOT THE IF STATEMENTS SUCCEEDED* !!!!
Yes I do consider this a bug in the coding style of Tridge, Rusty, Tim et al. :-).
I'm just pissed 'cos this took 4 hours to track down even with an insure error report
stating me in the face and also Ben Woodward looking over the code with me :-).
Jeremy.
(This used to be commit 506b5e34c3ba16768dbc82ba21044787de160c45)
|
|
dead records, else the record is just marked for deletion, not actually deleted.
Second, ensure allocated record is marked as "in use" before free list lock is
released, else other processes in the freelist merge code may try and merge it.
Jeremy.
(This used to be commit dd959fa325c5df8ce0407d8debea76602c8e71cf)
|
|
Jeremy.
(This used to be commit cfc62fecdf4c5579ee643df3e701cf6f1fe553ee)
|
|
and the next hashchain is empty.
Jeremy
(This used to be commit f3b5e2a172a777e1c3bbf6ac72fe5c7cdb8324b3)
|
|
a --with-spinlocks option to configure, this does mean the on-disk tdb
format has changed, so 2.2alphaX sites will need to re-create their
tdb's. The upside is no more tdb fragmentation and a +5% on netbench.
Swings and roundabouts....
Jeremy.
(This used to be commit 9dea7b7c257db487f8ced7dad3fce92fba03ea91)
|
|
Jeremy.
(This used to be commit c9884e16fc2d13dd62c5a43633c9a38dadc9822c)
|
|
This needs TESTING !!! (It passes tdbtest of course :-).
Jeremy.
(This used to be commit 7ae54a93e756d927419242adf35f46e91e974573)
|
|
Jeremy.
(This used to be commit ee89ca9e68abb23fc26cd1378e02e56d0d725e55)
|
|
fragmentation
(This used to be commit b64e1ae69314ae110c548f57810c34e620d57075)
|
|
(This used to be commit 03453e2ae557d7fa119338b71744822093d2f38a)
|
|
is conceptually flawed
(This used to be commit 6e4a3585521b7e5928298bd0f1418ff9fbcacfb4)
|
|
Jeremy.
(This used to be commit 7914e9351abb5271ebb4990c3b1fe495d15a4eda)
|
|
them (this can happen if smbd processes are shut down at the wrong time).
Jeremy.
(This used to be commit c1de97f96b8c5ad8e5f01a0d17c6387733769442)
|
|
- don't use as many locks on a store
(This used to be commit ee12b10d21022287baf4432d1df743c4b28223b2)
|
|
this will give us a much nicer migration path for the proposed
semaphore code
(This used to be commit 491ab241897a7252fb088c718de4bdf7f43f4ddc)
|
|
(This used to be commit a5ca60f62bea988e74e2827fbb848770ac5ae444)
|
|
used for semaphores and future expansion
- update tdb version number to 2
(This used to be commit 5e04885b86791e6ef8b4a316e64d56c6eb05f35d)
|
|
Jeremy.
(This used to be commit 400906e6421c150b591b4bf978a641d5aaf8fd09)
|
|
(This used to be commit 5341597de6772027034cad7dacbdbd6d2108332a)
|
|
TDB_INTERNAL replaces the old method of passing a null filename
(This used to be commit 8ec815920d46f205b9f3fff82397c731753c3a10)
|
|
call to ms_fnmatch(). This also removes all the Win9X semantics stuff
and a bunch of other associated cruft.
- moved the stat cache code into statcache.c
- fixed the uint16 alignment requirements of ascii_to_unistr() and
unistr_to_ascii()
- trans2 SMB_FIND_FILE_BOTH_DIRECTORY_INFO returns the short name as
unicode always (at least thats what NT4 does)
- fixed some errors in the in-memory tdb code. Still ugly, but doesn't
crash as much
(This used to be commit 03e9cea004bbba72161a5323cf3b4556c94aed8e)
|
|
(This used to be commit 77009422a075300e5c07a3e75806a7dac47e2113)
|
|
the tdb_get/set_int string functions in terms of them. Will be useful in storing
POSIX pending close records (which are ints but indexed by dev/inode pairs).
Jeremy.
(This used to be commit d69e4c6a48746459f973144393529b1f40680d2f)
|
|
(This used to be commit 90b574296e06cd6ed4fedc1e5a8ae412a5e78b45)
|
|
(This used to be commit 044af3cf977e3172b3b1ce3f71457d5b0a4fc1b2)
|
|
they are very useful for database versioning
(This used to be commit cc65914cdcceb1fdeeb5d6ec1cf2ea2f865c5092)
|
|
(This used to be commit bbacdb834f9c8f8c34368664def42dabe78d90c9)
|
|
associated with them. tdb can then be used as a hash table data
structure.
(This used to be commit b345c0a1058bcde7689bb9566535e9f1c46ee173)
|
|
(This used to be commit 7faa70d254549e60520de1ed1112d41fe9a4d77c)
|
|
with NULL tdb context.
(This used to be commit ba9f24c0964054f22cd8f0de32cfeacb88b4800c)
|
|
two places i found where it was appropriate to _use_ that third argument,
in locking.c and brlock.c! there was a static traverse_function and
i removed the static variable, typecast it to a void*, passed it to
tdb_traverse and re-cast it back to the traverse_function inside the
tdb_traverse function. this makes the use of tdb_traverse() reentrant,
which is never going to happen, i know, i just don't like to see
statics lying about when there's no need for them.
as i had to do in samba-tng, all uses of tdb_traverse modified to take
the new void* state argument.
2) disabled rpcclient: referring people to use SAMBA_TNG rpcclient.
i don't know how the other samba team members would react if i deleted
rpcclient from cvs main. damn, that code's so old, it's unreal.
20 rpcclient commands, instead of about 70 in SAMBA_TNG.
(This used to be commit 49d7f0afbc1c5425d53019e234d54ddf205c8e9a)
|
|
Jeremy.
(This used to be commit 82c99dc8d8bc79e88f0db651f04fc23508195a51)
|
|
(This used to be commit 77cf152c02b445f4b6e9de393936dd6e54e6f442)
|
|
(This used to be commit 2a152998a1489dead0edadb06f78b0ad6ede1a3a)
|
|
(This used to be commit bf9b1328c5843eb217eff4ca05645498de2def82)
|
|
- fixed a race condition in tdb_open()
(This used to be commit 21d4882f64a65ee1786231eb55b7768bb44921fd)
|