Page 2 of 2

Re: DBF/CDX or SQL

PostPosted: Sat Oct 24, 2009 4:14 pm
by Enrico Maria Giordano
Believe me: a faulty network card can cause unexpected results.

EMG

Re: DBF/CDX or SQL

PostPosted: Sat Oct 24, 2009 6:09 pm
by James Bott
Marc,

>It's the same for antivirus-program becauwe it's running fast on the network/server when only one person is using it..

I was not saying that AV was the reason--I was just reporting the setup of my test system.

There still must be some other difference in your system since it works fine for both me and Otto.

Can you test on a different network? Or, using different PC's on the same network?

James

Re: DBF/CDX or SQL

PostPosted: Sat Oct 24, 2009 9:19 pm
by Marc Vanzegbroeck
James,

I will test it on other PC's on the network and also on another network.
Did you thy it with the exe-files that I have compiled?

Thanks,
Marc

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 3:54 am
by James Bott
Marc,

>Did you thy it with the exe-files that I have compiled?

Did you email me some EXE files? If so, I didn't get them. Please try again.

jbott at compuserve dot com

I did my tests by compiling the source code that you posted.

James

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 6:16 am
by Marc Vanzegbroeck
James,

There are 2 links to the exe-files in this topic a couple of messages ago.

In the mean time I tried it on an other network an the result was 0.06sec without test, and 1.02 with running test.exe.

Its much faster, but still 10 times slower then running without test.exe

Regards,
Marc

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 12:24 pm
by James Bott
Marc,

I retested using your EXEs and I get 0.047 seconds both with and without test.exe running on another PC.

What version of Windows are you running on your networks?

James

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 3:07 pm
by reinaldocrespo
Marc;

It's not dbfcdx rdd. You need to look elsewhere. Having said that; why not try another compatible dbfcdx rdd? (ADS comes to mind).
RDDSetDefault( "ADS" )
AdsSetFileType( ADS_CDX )

No SQL is faster performing sequential operations they way you are on your sample. The only thing that could be faster would be using ADS on client-server mode (called REMOTE).

If your are running a peer-to-peer network then I would not discard EMG's suggestion. it might be a good idea to "sniff" the packets going in-out of the pc. See what kind of network traffic is going on.

If the files are shared, then when "replacing" you must lock the record. Therefore; there IS locking involved. Without ADS (on proprietary locking mode), locking is done by the OS. So, we can't discard record locking problems either.

The problem you describe sounds intriguing. I've never experienced it. Not even with very many users. I'd like to learn what finally solved the problem. Please keep us informed.

Regards,



Reinaldo.

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 3:34 pm
by James Bott
Marc,

I would just like to clarify exactly how you are running the test.

I am running a peer-to-peer network. For easy reference I am going to call one PC the server (where the files are) and the other PC the client.

Tests
1. Server: Run Test1.exe = 0.047 sec
2. Client: run test.exe, server: run test1.exe = 0.047 secs
3. Server - run Test.exe, Client: run test1.exe = 0.14 to 0.61 secs

Note that Test1.exe will always run slower on the client PC than on the server PC because it has to read indexes and records across the network.

Please tell us exactly which tests you are running.

James

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 6:11 pm
by Marc Vanzegbroeck
James,

The programs test and test1 are installed on the HD of the server.
I run test1.exe from a PC connected to the network , and test.exe from another PC.

Regards,
Marc

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 8:15 pm
by James Bott
Marc,

OK, I didn't know you were using 3 PCs.

I have replicated your test using your EXEs on two client PCs and I get a similar result running Test1.exe-- from 4-6 seconds.

However, I don't think we can contribute this to the CDX index yet. Perhaps it would be worthwhile to run some other DBF test without using an index like skipping through a couple of hundred records.

I also wonder if your test is a real-world condition. I can't think of any time I ever needed to do a seek of 1000 records at a time; I can't even remember ever needing to seek more than one record at a time. Do you have an application that does seek lots of records like that?

My point is that even if seeking takes 10 times longer when two client PCs have the app open, does it really matter when only one seek is being done at a time? If it takes 0.6 seconds instead of 0.06 seconds, I doubt that any user is going to really notice.

James

Re: DBF/CDX or SQL

PostPosted: Mon Oct 26, 2009 9:04 pm
by Alfredo Arteaga
Marc.

Test: ipconfig /release before run.

Re: DBF/CDX or SQL

PostPosted: Sat Mar 12, 2016 10:43 am
by joseluispalma
Hello Mark,

I am just experiencing this problem you had with 2 or more users.

How did you solve it?.

Thank you very much!.

Re: DBF/CDX or SQL

PostPosted: Sat Mar 12, 2016 3:22 pm
by Marc Vanzegbroeck
Hi,

The people of the network changed something.
I don't remember anymore what it was, since it's more than 6 years ago.
A couple of years ago, I moved the program to SQL, and now it's very fast

Re: DBF/CDX or SQL

PostPosted: Sun Mar 13, 2016 8:52 am
by joseluispalma
Hello Mark,

I really will apreciate if you could provide us the changes in the network.

OS_NetRegOK( .t.) does not fix it.

With only one PC using the software, it´s fine. Databases are quite small. All wired with 100 Mbps.

Thank you.