[Samba] Samba performance/stability issue...

Marcello Melfi
Wed, 14 Jul 2004 03:06:52 -0000

Hi Jeremy,

The C++ application was for testing purposes only. However, the real
application we are using is a commercial package for which I do not have any
control. In real life, that application will run on a few windows
workstations and should export about 3000 to 4000 files per workstation. We
were planning to have one directory per worstation within the samba share.
Can't do it otherwise...

Regardless of the above, why is it that sometimes I get very good results
and many other times bad ones? I would expect that this case-insensitive
thing be consistent and therefore always generates bad results. Do you have
an explanation for this behavior!

In any case, is there a way to stop this lookup? For example, always use
uppercase or something like that...

Note: I really appreciate you for taking the time to respond!

Bye,

Marcello


-----Original Message-----
From: Jeremy Allison [mailto:jra@samba.org]
Sent: July 13, 2004 21:50
To: Marcello Melfi
Cc: samba@lists.samba.org
Subject: Re: [Samba] Samba performance/stability issue...

On Tue, Jul 13, 2004 at 09:43:02PM -0400, Marcello Melfi
wrote:
>
> I am performing some benchmarks that will reflect the way I am going
> to use Samba. Basically, I am copying/creating, via a simple C++
> program running on the client box, the same 50 K-Bytes file about
> 10,000 times on the Samba share. Of course, the file is renamed with a
> sequence number so that at the end there are 10,000 newly created
> files on the share. As you might have guessed by now, I am not using
> Samba to simply replace a file server for windows users. I am using
> Samba so that a windows application (running in the background) can
> export files to another unix applications. NFS could have been an
> alternative, but Samba will integrate this export mechanism in a more
transparent fashion.

Are you creating all these files in the same directory ? If so, that's your
answer for why things are slow. Samba has to provide a case-insensitive
lookup for a case-sensitive filesystem. Every time you try and create a file
that doesn't exist Samba has to do a directory scan to see if the file
exists in a different case. This is slow. Fix your app to create into
different directories and you'll find it gets much faster.

Jeremy.