If someone else is in the program with the tables open, reports will be
slow, and the client interface will be slow.
It's a network share thing. Some of our customers see this when their data
gets above 3000 records.
Where I have seen biggest impacts to VFP in recent years is increased
use of "virtual drives" - aka not a real hardware drive. Where I work
they "hand out" virtual drives - but they are controlled by corporate
IT. So I could not get to the details of how those drives are set up.
What I saw was that VFP performance was impacted by around 1000% (yes
10x slower, in some cases I think even worse). When I placed the
database on a "dev" server (which was an actual hardware box) where
several of us could just map a drive, performance was the usual snappy,
nearly instantaneous results (except of course where we expected it to
be slower - like processing a couple hundred thousand records). In one
app I created a "background" sync framework where the entire DB was
local (one of the Big Data replication methodologies). It worked well,
but it was a bit of effort to implement.
Don't get me wrong, virtual drives are great and satisfy a certain need.
And they essentially look "identical" to a hardware LAN drive. But I
imagine this will get worse as time goes on, even for hardware boxes
(look up the junk about SMB, SMB2, blah blah blah). Maybe if they drop
windows servers and go Linux with Samba...???
Oops, too much talking. Suggestions in probable order of ease of trying:
- I assume you can modify code and can change the VFP DB design: first,
double check indexes of tables: VFP does not pull down the "whole table"
when a table is "used". But uninformed/uncaring "REPORT" designs may
well be scanning the whole table. Check that out: generally it is better
to do a "SELECT..." statement into a temp cursor, and then do the REPORT
FORM from that. If the DB indexes match the SELECT clauses essentially
only the matched data will come over the wire. And then, since the temp
cursor is "local" there is no locking contention whatsoever as the
REPORT FORM is running.
- find out if they are using virtual drives: if they are, and if the app
is a priority, checking performance on an actual hardware box might be
worth it (if IT cooperates... ha)
- if it is a hardware box, may need to do research into SMB settings
(Ops lock, etc) (but IT has to help with this... ha ha)
- Seriously, putting Ubuntu server on a box is drop-dead easy, setting
up a Samba share also drop-dead easy. That could be a good test. But
corp IT is generally ignorant and inflexible in non-software companies
(and especially if they are MS-certified.... hahahahaha).
HTH,
-Charlie
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message:
http://leafe.com/archives/byMID/profox/[email protected]
** All postings, unless explicitly stated otherwise, are the opinions of the
author, and do not constitute legal or medical advice. This statement is added
to the messages for those lawyers who are too stupid to see the obvious.