Hi all, I hope someone can help me.
We have developed a VFP app to read accounting files using the vendor's ODBC driver. There is no support for this driver now . The vendor's files use a Faircom c-tree database.
A client wishes to migrate to 2016 server. In testing, we found that our app works fine in itself, but reading data from the vendor's files via the ODBC driver is VERY slow - 8 to 10 times slower. Every effort has been taken to ensure that the environment is the same, except for the server.
We use DSN-less connections to the vendor's files.
In testing, a 15,000 record file with ~8 fields takes >2 minutes to read, compared to <10 seconds on the old server. If I query one field, not the whole table, this reduces to about 35 seconds. Complex queries take longer. Our record counter increments slowly by 100's.
Further, I created a data (MS)query in Excel (2010) using a (32-bit) DSN to the same file, and the whole table was read in <10 seconds.
I have run both tests (Excel and our program) with ODBC trace turned on. The trace files are very different (Excel 750k, our program 7MB+), but the trace program on the old server running our program is the same 7MB.
Can anyone suggest:
- directions I should be looking?
- ways to improve the performance?
- ways to find the bottleneck?
- any resources that might help?
- any explanations (deprecations, limitations, etc.)
THe client's IT support wish to migrate very soon, I am at a loss.
We have developed a VFP app to read accounting files using the vendor's ODBC driver. There is no support for this driver now . The vendor's files use a Faircom c-tree database.
A client wishes to migrate to 2016 server. In testing, we found that our app works fine in itself, but reading data from the vendor's files via the ODBC driver is VERY slow - 8 to 10 times slower. Every effort has been taken to ensure that the environment is the same, except for the server.
We use DSN-less connections to the vendor's files.
In testing, a 15,000 record file with ~8 fields takes >2 minutes to read, compared to <10 seconds on the old server. If I query one field, not the whole table, this reduces to about 35 seconds. Complex queries take longer. Our record counter increments slowly by 100's.
Further, I created a data (MS)query in Excel (2010) using a (32-bit) DSN to the same file, and the whole table was read in <10 seconds.
I have run both tests (Excel and our program) with ODBC trace turned on. The trace files are very different (Excel 750k, our program 7MB+), but the trace program on the old server running our program is the same 7MB.
Can anyone suggest:
- directions I should be looking?
- ways to improve the performance?
- ways to find the bottleneck?
- any resources that might help?
- any explanations (deprecations, limitations, etc.)
THe client's IT support wish to migrate very soon, I am at a loss.