[Samba] How is the Samba people stress testing Samba.

Bo Jacobsen subs at systemhouse.dk
Thu Nov 14 12:04:00 GMT 2002


Over the years I have seen a number of strange integrity problems when using Samba servers, and
I sometime wonder how Samba is stress tested.

As long as a Samba server is used as a normal file server, we very seldom se any problems, but if
heavily used, flat file databases are used, some versions of Samba are more stable then others.
Even with oplocks disabled and strict locking enabled, we could not always stop the corruption of files.


A number of years ago I wrote a DOS program designed to run on multiple client hosts, stress and integrity testing 
a shared file on a Windows NT 3.51 file servers. In principal the program continuously locks a random part of the testfile
(on the server), reads the data and test the data for errors, then writes a new testpattern and removes the lock.

Lately I have tried it on different Samba servers with very different results.

When I tried to test a Samba 2.2.5 server (SuSE 8.0 Kernel 2.4.19, oplocks disabled, AMD XP1900+, 256MB) with two Win98 
clients, the clients could never run more then maybe 6 hours before one of the clients completely lost contact 
with the Samba server and had to be rebooted. Two bytes in the 250MB testfile was corrupted. If only one client was run, the 
client still lost contact to the server and had to be rebooted.

When the same test was run on a Samba 2.2.6 server (SuSE 8.1 Kernel 2.4.19, oplocks disabled, AMD XP1900+, 256MB, and
the same Win98 clients), the clients never lost contact to the server, but I have not yet been able to run the test more the maybe 48 
hours without a corruption of the testfile.


The reason I'm looking into this problem is that I have 3 users (clients here are two W2K, and one Win98) that run an old DOS 
shared flatfile database that we have moved from a Win98 machine to Linux, and it has really been a nightmare. First we 
moved it to the Samba 2.2.5 server, but it did not take more then a couple of hours before the database was corrupted. Then 
we moved to the 2.2.6 server and things started to look a lot better, but the corruption did not stop, it just took maybe one or two
days before we saw corruption. The application has run for more the 4 years on the Win98 machine, and data has never been
corrupted.
I'm not yet sure, but errors happens even if only one user using the database. I think the database is based on Paradox.


I'm thinking of reviewing my old DOS program (if I can find the source code) and see what happens if it's recompiled with a
new compiler. I Think the program was compiled with Borland C 3.0.


Any suggestions (besides moving back to Win98).


 
Thanks in advance
Bo Jacobsen

-------------- next part --------------
HTML attachment scrubbed and removed


More information about the samba mailing list