<s...@boran.com.NOSPAM> wrote:
>>The problem:
>>==========
>>I have a D3.02 application that whizzes along when only one user is active,
>>but gets very (unusable) slow with two of more.
>>When it's slow a "last" can take 30 seconds (as opposed to instantanaeous
>in
>>single user). Also selecting a new index an "apply range" can take 30 secs
>>or more?
>And quickreports can take 30 minutes!
>>The setup:
>>========
>>The appllication is stored locally (win95), the paradox tables on an NT4
>>server, mounted via UNC. The main table is 1.2k/record with almost 5000
>>records. Not that big. A few tables are DBASE mounted readonly from another
>>application.
>>I have 3 secondary indices.
>>PrivDir is set to c:\temp, NET dir to a dedicated UNC on the server,
>>identical for all clients. All clients use the exact same Delphi app.
>>Client have between 32 & 64MB and are fast enough.
>>There are two BDE aliases, I set them from an ini file on start up.
>>All tables are close at design time and opened when the main form opens.
>>Queries are also closed as design time and closed and reopened at each
>>usage.
>>BDE settings: I set localshare=true and increased sharememsize to 4096 and
>>memsize to 24
>>The server is not overloaded.
>>I have about 30 tables, 80% or them are read only. The main table has lots
>>of reading & writing (reading via SQL local queries mostly), writing via
>>searching on one of the indices
>>I tried upgrading to BDE5.01, it didn't help..
>I also tried switching to a meatier NT 4 server with 128MB ram on a 400MHz
>CPU.
>It makes no difference.
>I've tried setting localshare=true or false. No help..
>Now, when one user uses the app, it works fine. A second slows it
>drastically.
>When the second stops using the app it does not speed up, because the BDE
>seems to keep some files open. If I go to the server and "disconnect" the
>second user (via the server manager), the first user get back up to full
>speed.
>So it looks like BDE locking is causing the problem. Since the BDE doesn't
>seem to be doing it's locking very well:
>- is there a way of putting the BDE into "debugging" mode where it can
>output detailed messages about all the operations it does? [Or is it wishful
>thinking on my behalf?]
>- how can I interrogate the BDE to know what records, tables etc are locked
>by whom and how can I free up the locks?
>This could get very hairy if I startprogramming the BDE directly...
>Surely there are someone you have wrapped horn with paradox/BDE locking
>before??
>Thanks in advance,
>Sean