connections.tdb & messages.tdb getting full of junk

Damian Ivereigh damian at cisco.com
Fri Jan 5 06:56:17 GMT 2001


Hi guys,

Just in case you aren't bored of me yet....

When running smbd under heavy load, not to mention doing a few
killall's when installing new versions, the connections.tdb &
messages.tdb get full of junk which never seems to get cleaned out.
This causes a problem when a broadcast is done, because random process
(non-Samba) get sent SIGUSR1's (where the pid has been re-used). This
causes quite a bit of havoc!

I am wondering what everyone's thoughts are on this? Am I doing
something stupid? My temporary (rather cludgy fix) is just add an
extra check in traverse_fn() (lib/messages.c) for the pid existing and
if not delete the record from connections.tdb. What I am concerned
about is whether it is OK to do a tdb_delete from within a
tdb_traverse. Also will this "cleanup" be called frequently enough?
Does have anyone have any thoughts on the "proper" way to keep this
table clean? Should there be a seperate cleanup process for example -
are there any race conditions to think of etc?

Damian


-- 
Damian Ivereigh
CEPS Team Lead
http://wwwin-print.cisco.com
Desk: +61 2 8446 6344
Mob: +61 418 217 582




More information about the samba-technical mailing list