Hi all, I have a problem that is really puzzling me and annoying my
customers, and I am not sure even on what to investigate first. Any hint
will be appreciated.
Scenario: a networked environment in which an application compiled with
xharbour 0.99 + wvw manages some databases with about 50.000/60.000
records from XP clients via a Samba share on a Linux server. Every month
about 1500/2000 new records are added. New records are marked by a flag
as 'news' and are marked as 'old' at the end of their monthly lifetime.
A conditional index allows for a browse to edit only 'new' records.
Other indexes are not conditional and allow for a full search and edit.
The RDD is DBFCDX.
Recently a server-side CGI running under Linux (Slackware, kernel 2.6)
has been added that allows for external users to interact via a web
interface from outside the intranet and update the same archives.
I have no problems at all from the point of view of data management,
shares, concurrent access, and everything works as expected, but the
opening of the files has become very slow for the users in the intranet,
to the point I must admit that the whole thing is too slow for a
professional environment. The app waits some 10-15 seconds to open the
archives, and this lag is really annoying. Every single operation opens
and then closes the databases, and the app has been working quickly and
smoothly for years. Now when an user chooses an operation from the
menu there is this incredible lag, and I have not been able to figure
out what's happening.
First of all I tested the speed of the network, figuring a network
problem (switch, cable...) but with netspeed and isolating the PC's on a
single 'piece' of network I was not able to detect any problem. (I
launched some file transfer from/to clients to/from the server, with
netspeed in background measuring the speed.)
Then I put off the router, blaming the external accesses (maybe a
different lock scheme from the CGI, running under Linux...)
Again, the behavior did not change. The speed of data transfer in file
opening is a fraction of the regular file transfer speed according to
netspeed. What does it mean?
Then I asked to reduce the overall number of records, forcing the
'administrator' (I am the real administrator, ehm) to store the 'dead'
records to the 'history' archives (those are archives where the records
are amassed at the end of their lifecycle, and are usually not opened at
all by the regular users. Only the 'administrator' can access them via a
reserved function, another browse in fact, so they are irrelevant).
At present time, nothing seems to impact the slow performance. I wonder
if it can be a Samba problem, even if I was not able to detect it. Next
try will be a 'mirror' test program with deflated databases in another
directory. Can the size of a set of DBF influence the time needed to
access them at opening time? I never heard about it in Clipper, nor in
xHarbour.
I hope to have (pant!) explained clearly the problem. I am considering
to upgrade to xHarbour 1.21.xxxx but I have to be quite sure that wvw
works as expected under Windows, and I'll have to upgrade the Linux
development environment too... so BEFORE to go for that I'll be very
happy to hear some advice!
TIA
D. Campagna
|
|
0
|
|
|
|
Reply
|
D
|
1/13/2010 10:18:18 PM |
|
Dear D.Campagna:
On Jan 13, 3:18=A0pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> Hi all, I have a problem that is really puzzling me and
> annoying my customers, and I am not sure even on
> what to investigate first. Any hint will be appreciated.
> Scenario: a networked environment in which an
> application compiled with xharbour 0.99 + wvw
> manages some databases with about 50.000/60.000
> records from XP clients via a Samba share on a
> Linux server. Every month about 1500/2000 new
> records are added. New records are marked by a flag
> as 'news' and are marked as 'old' at the end of their
> monthly lifetime. A conditional index allows for a
> browse to =A0edit only 'new' records. Other indexes are
> not conditional and allow for a full search and edit.
> The RDD is DBFCDX.
Move to SQL.
> Recently a server-side CGI running under Linux
> (Slackware, kernel 2.6) has been added that allows
> for external users to interact via a web interface
> from outside the intranet and update the same
> archives.
Make the internet version a clone of the intranet's files, and update
the clone copies overnight. Internet clients are used to waits.
> development environment too... so BEFORE to
> go for that I'll be very happy to hear some advice!
This is my nickel's worth of free advice.
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/13/2010 10:58:44 PM
|
|
"D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
news:hilgrc$m4b$1@nnrp-beta.newsland.it...
> but the opening of the files has become very slow for the users
> in the intranet,
I noticed the same problem. I compared the same app compiled in March 2008
and today and found the former much faster in opening DBFs.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/13/2010 11:38:23 PM
|
|
dlzc ha scritto:
> Dear D.Campagna:
>
> On Jan 13, 3:18 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
>> Hi all, I have a problem that is really puzzling me and
>> annoying my customers, and I am not sure even on
>> what to investigate first. Any hint will be appreciated.
>> Scenario: a networked environment in which an
>> application compiled with xharbour 0.99 + wvw
>> manages some databases with about 50.000/60.000
>> records from XP clients via a Samba share on a
>> Linux server. Every month about 1500/2000 new
>> records are added. New records are marked by a flag
>> as 'news' and are marked as 'old' at the end of their
>> monthly lifetime. A conditional index allows for a
>> browse to edit only 'new' records. Other indexes are
>> not conditional and allow for a full search and edit.
>> The RDD is DBFCDX.
>
> Move to SQL.
(Ugh) This is not going to be a quick solution, I am new to SQL...
>
>> Recently a server-side CGI running under Linux
>> (Slackware, kernel 2.6) has been added that allows
>> for external users to interact via a web interface
>> from outside the intranet and update the same
>> archives.
>
> Make the internet version a clone of the intranet's files, and update
> the clone copies overnight. Internet clients are used to waits.
I forgot to say that the Linux CGI works as expected, that is to say
it's very fast. No lags here.
> This is my nickel's worth of free advice.
>
> David A. Smith
Thanks, David. I suspected it's time for me to begin to practice with SQL...
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/14/2010 8:19:11 AM
|
|
Enrico Maria Giordano ha scritto:
> "D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
> news:hilgrc$m4b$1@nnrp-beta.newsland.it...
>
>> but the opening of the files has become very slow for the users
>> in the intranet,
>
> I noticed the same problem. I compared the same app compiled in March 2008
> and today and found the former much faster in opening DBFs.
>
> EMG
But, let me understand: you have recompiled with a new xHarbour version?
I haven't. The program running on XP and Windows 2000 clients is still
the same. And, as told to David, the Linux CGI is a flash.
And, by the way, how have you managed / planned to solve the problem?
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/14/2010 8:26:16 AM
|
|
"D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
news:himkf9$97m$1@nnrp-beta.newsland.it...
> But, let me understand: you have recompiled with a new xHarbour version?
Yes. I always use latest xHarbour from CVS.
> I haven't. The program running on XP and Windows 2000 clients is still the
> same. And, as told to David, the Linux CGI is a flash.
So yours is a different problem, I suppose.
> And, by the way, how have you managed / planned to solve the problem?
No, I only alleviated it by reducing unnecessary USE/CLOSE.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 9:21:45 AM
|
|
Dear D.Campagna:
On Jan 14, 1:19=A0am, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> dlzc ha scritto:
> > On Jan 13, 3:18 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> >> Hi all, I have a problem that is really puzzling me and
> >> annoying my customers, and I am not sure even on
> >> what to investigate first. Any hint will be appreciated.
> >> Scenario: a networked environment in which an
> >> application compiled with xharbour 0.99 + wvw
> >> manages some databases with about 50.000/60.000
> >> records from XP clients via a Samba share on a
> >> Linux server. Every month about 1500/2000 new
> >> records are added. New records are marked by a flag
> >> as 'news' and are marked as 'old' at the end of their
> >> monthly lifetime. =A0A conditional index allows for a
> >> browse to =A0edit only 'new' records. =A0Other indexes are
> >> not conditional and allow for a full search and edit.
> >> The RDD is DBFCDX.
>
> > Move to SQL.
>
> (Ugh) This is not going to be a quick solution, I am
> new to SQL...
Same here. It is only the recent past technology, where DBFCDX is
distant past technology.
> >> Recently a server-side CGI running under Linux
> >> (Slackware, kernel 2.6) has been added that allows
> >> for external users to interact via a web interface
> >> from outside the intranet and update the same
> >> archives.
>
> > Make the internet version a clone of the intranet's
> > files, and update the clone copies overnight.
> >=A0Internet clients are used to waits.
>
> I forgot to say that the Linux CGI works as
> expected, that is to say it's very fast. No lags here.
It was implied and I understood that. I suspect the "CGI overhead"
may be causing the slow down in other operations. So if there is no
overhead associated with locally accessed files...
> > This is my nickel's worth of free advice.
>
> Thanks, David. I suspected it's time for me to
> begin to practice with SQL...
You and me both...
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/14/2010 2:50:31 PM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:6474dcc7-d027-4bbd-b7c8-bce9069df5c2@s31g2000yqs.googlegroups.com...
> Same here. It is only the recent past technology, where DBFCDX is
> distant past technology.
SQL is much older than DBFCDX.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 5:30:20 PM
|
|
On Jan 14, 10:30=A0am, "Enrico Maria Giordano"
<e.m.giord...@emagsoftware.it> wrote:
> "dlzc" <dl...@cox.net> ha scritto nel messaggionews:6474dcc7-d027-4bbd-b7=
c8-bce9069df5c2@s31g2000yqs.googlegroups.com...
>
> > Same here. =A0It is only the recent past technology,
> > where DBFCDX is distant past technology.
>
> SQL is much older than DBFCDX.
You are correct. It even predates dBase II (so even early DBFNTX) by
a few years.
But you will agree it is a better solution for "mixed access"
architecture, I think.
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/14/2010 5:39:09 PM
|
|
David & Enrico said:
>> Same here. It is only the recent past technology, where DBFCDX is
>> distant past technology.
>
> SQL is much older than DBFCDX.
>
> EMG
David:
I'm older than *any* technology around today (except maybe the
automobile) :((
I 'sampled' SQL many years ago, and found it daunting and 'remote'.
That is, a programmer couldn't get really *close* to the actual data inside
the SQL database -- it seems to have a wall around the actual files). With
DBFCDX and its predecessors (DBFNTX, etc), I feel much closer to the data
than with the (frightening) SQL database protocol.
Is modern SQL faster than CDX stuff ??
-Mel Smith
|
|
0
|
|
|
|
Reply
|
Mel
|
1/14/2010 5:41:09 PM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:67d03f0f-caf3-479d-9aaf-15f41a1b8840@k19g2000yqc.googlegroups.com...
> But you will agree it is a better solution for "mixed access"
> architecture, I think.
Yes... and no. I think SQL and client-server are obsolete technologies
borned to overcome networks slowness. They are losting their purpose day
after day.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 5:52:55 PM
|
|
"Mel Smith" <med_cutout_syntel@aol.com> ha scritto nel messaggio
news:7r939pFh4nU1@mid.individual.net...
> I'm older than *any* technology around today (except maybe the
> automobile) :((
I'm class 1960, and you?
> I 'sampled' SQL many years ago, and found it daunting and 'remote'.
> That is, a programmer couldn't get really *close* to the actual data
> inside the SQL database -- it seems to have a wall around the actual
> files). With DBFCDX and its predecessors (DBFNTX, etc), I feel much
> closer to the data than with the (frightening) SQL database protocol.
Yes, but that is considered an advantage from the security point of view.
> Is modern SQL faster than CDX stuff ??
Yes and no. It depends. It's not so easy to compare those two deeply
phylosophycally different technologies.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 6:00:58 PM
|
|
Mel Smith ha scritto:
> David & Enrico said:
>
>>> Same here. It is only the recent past technology, where DBFCDX is
>>> distant past technology.
>> SQL is much older than DBFCDX.
>>
>> EMG
>
> David:
>
> I'm older than *any* technology around today (except maybe the
> automobile) :((
>
> I 'sampled' SQL many years ago, and found it daunting and 'remote'.
> That is, a programmer couldn't get really *close* to the actual data inside
> the SQL database -- it seems to have a wall around the actual files). With
> DBFCDX and its predecessors (DBFNTX, etc), I feel much closer to the data
> than with the (frightening) SQL database protocol.
>
> Is modern SQL faster than CDX stuff ??
>
> -Mel Smith
>
>
To all the three old foxes here (four with me, born in 1958).
Are we kidding? No question about the fact that, as stated by EMG, SQL
technology is maybe older than CDX (ask Larry Ellison...). But in the
Good Old Times, none with a gram (an ounce for yankees, eh...) of brain
could have maintained that SQL was more performing than a straight .DBF
access. The former could have been implemented only in expensive
datawarehouses with powerful machines, while even a 286 PC was able to
retrieve data at an astonishing speed in a mere Novell 2.1 network, DOS
clients, ugh, without the need of expensive hardware resources. (Oh, BTW
a 286 WAS quite expensive for a small business at the time).
We are talking about 10Mb networks in best cases, I implemented at the
time 10-net networks, working IIRC at 1 Mb/s. Do you remember?
I remember the Oracle's catalog knocked me down simply with the number
of zeroes the license costed! Not considering the hardware needed! THAT
was the reason for Dbase et.al. gained so much momentum, I think.
Performance vs. cost. And THEN Clipper arrived, eh. THE solution, not
"a" solution.
So for what kind of reason now, that machines are so astonishing
powerful, networks shoot data at 100 Mb/sec and we have this wonderful
(x)Harbour 32-bit all-new stuff, Linux kernel 2.6 and a ton of
improvements regarding Samba, etc., well, I repeat, for what kind of
reason a stupid database of 50000/60000 records needs 15 seconds on a
modern PC to be opened?
Sorry, guys, I don't get it. I missed the train maybe.
I feel like a taxpayer that is asked to pay an extra amount in order to
have drinking water from his tap (not in California, in Montana)!
There is something that is quite different from things that have been
told me. I will go the SQL way if necessary, but I am sure I will have a
number of problems/drawback/messes that way, too. There are no free
lunches, isn't it?
And sorry for this - likely - waste of your time, it was only a far cry
from someone in a moment of angry (the moments you have the feeling to
get real, and what you see doesn't like you at all!).
Have a good programming, men. I promise to keep you informed, but,
having seen around EMG and DLZC for a while (I was exchanging opinions
with EMG some 18 years ago in FIDOnet...) I am not really confident I'll
find out an easy, obvious explanation of this mess and a quick solution
(other than go back to Clipper, eh eh!...).
Best regards.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/14/2010 8:56:23 PM
|
|
Dear Enrico Maria Giordano:
On Jan 14, 11:00=A0am, "Enrico Maria Giordano"
<e.m.giord...@emagsoftware.it> wrote:
> "Mel Smith" <med_cutout_syn...@aol.com> ha scritto nel messaggionews:7r93=
9pFh4nU1@mid.individual.net...
>
> > =A0 =A0I'm older than *any* technology around today (except
> > maybe the automobile) :((
>
> I'm class 1960, and you?
I remember JFK being shot, but not too much before that.
> > =A0 =A0I 'sampled' SQL many years ago, and found it
> > daunting and 'remote'. That is, =A0a programmer couldn't
> > get really *close* to the actual data inside the SQL
> > database -- it seems to have a wall around the actual
> > files).
This was by design. Minimizes data transfer, a necessity then, and a
really good feature now. Also centralizes data for security, backups,
etc.
> >=A0With DBFCDX and its predecessors (DBFNTX, etc),
> >=A0I feel much closer to the data than with the (frightening)
> > SQL database protocol.
>
> Yes, but that is considered an advantage from the
> security point of view.
>
> > =A0 =A0Is modern SQL faster than CDX stuff ??
>
> Yes and no. It depends. It's not so easy to compare
> those two deeply phylosophycally different
> technologies.
Multitasking always appears faster, where there is need. Network
communication speeds have increased, but still cannot meet CPU-to-
memory or CPU-to-hard-disk speeds. SQL must beat DBFCDX, for more
than a handfull of users (or users that are always looking at the same
handfull of records).
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/14/2010 8:58:57 PM
|
|
Enrico Maria Giordano ha scritto:
>
> Yes. I always use latest xHarbour from CVS.
In production? Hm, I am quite conservative in comparison...
>
> So yours is a different problem, I suppose.
Same environment? Linux, CGI accessing data?
(BTW I tweaked a bit with a couple of Samba parameters, to no avail.)
It seems that the performance degradation came after the CGI
implementation. But maybe it's not related.
>> And, by the way, how have you managed / planned to solve the problem?
>
> No, I only alleviated it by reducing unnecessary USE/CLOSE.
Unnecessary... yes, but I feared, among the others, the old
COMMIT/related problems, and took the habit to close/reopen files many
years ago, when I found that this was not a performance killer due to
caching of data by the server.
I started with Clipper working on floppies, and open/close was a pain,
but when they invented hard disks, all went fast. Are we going back or
forward? :-)
BTW, Novell was way faster than SAMBA/Linux. Not even comparable.
But I had so many problems with Novell 5, so I ended up with Linux.
Maybe you tried a Windows server?...
> EMG
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/14/2010 9:25:30 PM
|
|
"D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
news:hio0dp$5fn$1@nnrp-beta.newsland.it...
> We are talking about 10Mb networks in best cases, I implemented at the
> time 10-net networks, working IIRC at 1 Mb/s. Do you remember?
Yes, me too. But I remember 10 Mb (what 10-net stand for?).
> So for what kind of reason now, that machines are so astonishing powerful,
> networks shoot data at 100 Mb/sec and we have this wonderful (x)Harbour
> 32-bit all-new stuff, Linux kernel 2.6 and a ton of improvements regarding
> Samba, etc., well, I repeat, for what kind of reason a stupid database of
> 50000/60000 records needs 15 seconds on a modern PC to be opened?
That's exactly my thought! There must be something terribly wrong
somewhere...
> Have a good programming, men. I promise to keep you informed, but, having
> seen around EMG and DLZC for a while (I was exchanging opinions with EMG
> some 18 years ago in FIDOnet...)
Gasp! :-)
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 10:12:43 PM
|
|
"D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
news:hio24c$6h3$1@nnrp-beta.newsland.it...
> > Yes. I always use latest xHarbour from CVS.
>
> In production? Hm, I am quite conservative in comparison...
Yes. Now that RDDs are rock solid the risks in using xHarbour from CVS are
close to zero. This is the only way to seriously test it. And if something
doesn't work as expected I simply switch back to the previous xHarbour
build.
> > So yours is a different problem, I suppose.
>
> Same environment? Linux, CGI accessing data?
No, Windows peer to peer.
> > No, I only alleviated it by reducing unnecessary USE/CLOSE.
>
> Unnecessary... yes, but I feared, among the others, the old COMMIT/related
> problems, and took the habit to close/reopen files many years ago, when I
> found that this was not a performance killer due to caching of data by the
> server.
I was referring to USE/CLOSE tables for reading.
> I started with Clipper working on floppies, and open/close was a pain, but
> when they invented hard disks, all went fast. Are we going back or
> forward? :-)
I really don't know...
> Maybe you tried a Windows server?...
No, just Windows PCs with peer to peer networks.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/14/2010 10:22:53 PM
|
|
"Enrico Maria Giordano" <e.m.giordano@emagsoftware.it> wrote in message
news:4b4f5bda$0$823$4fafbaef@reader5.news.tin.it...
> I'm class 1960, and you?
>
I've been computer programming steadily since 1968 (with Fortran and
Algol at the University of Alberta) (and I was 36yo *then*), and I'm still
far behind in technology. I was sent to university as a Captain in the
Canadian Artillery for several years. Exited with a M.Sc. in Computing
Science (thesis was " On the Detection of Edges in Pictures" -- front end
of Computer Graphics).
... and now I'm an old (but busy) man
-Mel
|
|
0
|
|
|
|
Reply
|
Mel
|
1/14/2010 11:18:40 PM
|
|
"Mel Smith" <med_cutout_syntel@aol.com> ha scritto nel messaggio
news:7r9n2lFgbgU1@mid.individual.net...
> I've been computer programming steadily since 1968 (with Fortran and
> Algol at the University of Alberta) (and I was 36yo *then*), and I'm still
> far behind in technology. I was sent to university as a Captain in the
> Canadian Artillery for several years. Exited with a M.Sc. in Computing
> Science (thesis was " On the Detection of Edges in Pictures" -- front end
> of Computer Graphics).
>
> ... and now I'm an old (but busy) man
My sincere compliments!
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/15/2010 8:21:35 AM
|
|
Enrico Maria Giordano ha scritto:
>
> Yes, me too. But I remember 10 Mb (what 10-net stand for?).
>
10-Net, called "tennet" in Italy too, was a proprietary network system.
It had some diffusion at the beginning of the '90 IIRC. There was the
software package and the network cards. I think I have still a couple in
the cellar. :-)
>
> That's exactly my thought! There must be something terribly wrong
> somewhere...
:-) And let's hope the wrong ones are not us!
>> seen around EMG and DLZC for a while (I was exchanging opinions with EMG
>> some 18 years ago in FIDOnet...)
>
> Gasp! :-)
Well, probably it was only 15 yrs ago... 1995 maybe. I should have the
backups of all the threads i was paying attention to. (I wanted to write
a book about the first years of the telecommunication craze... maybe one
day or another I'll do it, when and if I reach the respectable age of
mr. Mel Smith, with a similar good shape!) :-)
>
> EMG
> The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
my first "computer" was a ZX-81...
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/15/2010 10:53:08 AM
|
|
"D.Campagna" <ynnadrebyc@tiscalinet.it> ha scritto nel messaggio
news:hipher$22f$1@nnrp-beta.newsland.it...
> 10-Net, called "tennet" in Italy too, was a proprietary network system. It
> had some diffusion at the beginning of the '90 IIRC.
No, I installed 10-Net in the second half of '80.
> my first "computer" was a ZX-81...
Me too. :-)
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/15/2010 11:30:50 AM
|
|
On Thu, 14 Jan 2010 21:56:23 +0100, "D.Campagna" <ynnadrebyc@tiscalinet.it> wrote:
Hello to all,
Here my little experiences. Sorry, I'm not a professional!
After using NTX, I'm still using DBFCDX.
In fact, using DBFCDX indexes is very fast also with many 10'000 of records.
But, after changing to a Microsoft servers (Currently SBS2003) everything has become slower!
Prior to Novell, I have had almost the same response time as a local disk.
Now, compare the same PC with the same application is for some
While .not. Eof() cycle from 2 und 5 times slower.
I can't give any answer about SQL!
Regards
Otto
>Mel Smith ha scritto:
>> David & Enrico said:
>>
>>>> Same here. It is only the recent past technology, where DBFCDX is
>>>> distant past technology.
>>> SQL is much older than DBFCDX.
>>>
>>> EMG
>>
>> David:
>>
>> I'm older than *any* technology around today (except maybe the
>> automobile) :((
>>
>> I 'sampled' SQL many years ago, and found it daunting and 'remote'.
>> That is, a programmer couldn't get really *close* to the actual data inside
>> the SQL database -- it seems to have a wall around the actual files). With
>> DBFCDX and its predecessors (DBFNTX, etc), I feel much closer to the data
>> than with the (frightening) SQL database protocol.
>>
>> Is modern SQL faster than CDX stuff ??
>>
>> -Mel Smith
>>
>>
>To all the three old foxes here (four with me, born in 1958).
>Are we kidding? No question about the fact that, as stated by EMG, SQL
>technology is maybe older than CDX (ask Larry Ellison...). But in the
>Good Old Times, none with a gram (an ounce for yankees, eh...) of brain
>could have maintained that SQL was more performing than a straight .DBF
>access. The former could have been implemented only in expensive
>datawarehouses with powerful machines, while even a 286 PC was able to
>retrieve data at an astonishing speed in a mere Novell 2.1 network, DOS
>clients, ugh, without the need of expensive hardware resources. (Oh, BTW
>a 286 WAS quite expensive for a small business at the time).
>We are talking about 10Mb networks in best cases, I implemented at the
>time 10-net networks, working IIRC at 1 Mb/s. Do you remember?
>I remember the Oracle's catalog knocked me down simply with the number
>of zeroes the license costed! Not considering the hardware needed! THAT
>was the reason for Dbase et.al. gained so much momentum, I think.
>Performance vs. cost. And THEN Clipper arrived, eh. THE solution, not
>"a" solution.
>
>So for what kind of reason now, that machines are so astonishing
>powerful, networks shoot data at 100 Mb/sec and we have this wonderful
>(x)Harbour 32-bit all-new stuff, Linux kernel 2.6 and a ton of
>improvements regarding Samba, etc., well, I repeat, for what kind of
>reason a stupid database of 50000/60000 records needs 15 seconds on a
>modern PC to be opened?
>
>Sorry, guys, I don't get it. I missed the train maybe.
>I feel like a taxpayer that is asked to pay an extra amount in order to
>have drinking water from his tap (not in California, in Montana)!
>There is something that is quite different from things that have been
>told me. I will go the SQL way if necessary, but I am sure I will have a
>number of problems/drawback/messes that way, too. There are no free
>lunches, isn't it?
>
>And sorry for this - likely - waste of your time, it was only a far cry
>from someone in a moment of angry (the moments you have the feeling to
>get real, and what you see doesn't like you at all!).
>Have a good programming, men. I promise to keep you informed, but,
>having seen around EMG and DLZC for a while (I was exchanging opinions
>with EMG some 18 years ago in FIDOnet...) I am not really confident I'll
>find out an easy, obvious explanation of this mess and a quick solution
>(other than go back to Clipper, eh eh!...).
>Best regards.
>Dan
|
|
0
|
|
|
|
Reply
|
Otto
|
1/15/2010 12:36:01 PM
|
|
Otto Haldi ha scritto:
> On Thu, 14 Jan 2010 21:56:23 +0100, "D.Campagna" <ynnadrebyc@tiscalinet.it> wrote:
>
> Hello to all,
> Here my little experiences. Sorry, I'm not a professional!
> After using NTX, I'm still using DBFCDX.
> In fact, using DBFCDX indexes is very fast also with many 10'000 of records.
CDX indexes are faster and more reliable, mainly with regard to memo
fields. I think not many people here still use .NTX. Nobody perhaps.
> But, after changing to a Microsoft servers (Currently SBS2003) everything has become slower!
> Prior to Novell, I have had almost the same response time as a local disk.
> Now, compare the same PC with the same application is for some
> While .not. Eof() cycle from 2 und 5 times slower.
Novell was the fastest network system ever seen for PC's. Unfortunately,
version 5 had so many quirks and errors (from the client side: and
specifically with Clipper applications running under Windows 95 I had
very hard times because of a bug in the Novell client in his first
releases) and a ridicolous price to upgrade. So I moved to Linux/Samba.
People noticed a performance degradation, but not so dramatic to worry
about. And it was free, after all.
But now things are getting worse... and it's not going to make me
happier just to know that I'm not alone in the mess!
> Regards
> Otto
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/15/2010 3:29:50 PM
|
|
Hi All
Well I guess I am another old one. Started with Novell & RXnet (I think)
in the middle 80's. I am still using Novell (version 6) - primarily just
file sharing, now using GB switches & cards, & still NTX files. I can
generate reports quicker off the server then I can off my local SATA 7200
rpm hard drive. I also have one install using BSD & Samba, which has
performed well.
One previous cause of file opening slowly was having a large number of
deleted records at the start of the file or index order.
Regards
Harold
"D.Campagna" <retsamtsop@danielecampagna.co.cc> wrote in message
news:hiq1lj$ckk$1@nnrp-beta.newsland.it...
> Otto Haldi ha scritto:
>> On Thu, 14 Jan 2010 21:56:23 +0100, "D.Campagna"
>> <ynnadrebyc@tiscalinet.it> wrote:
>>
>> Hello to all,
>> Here my little experiences. Sorry, I'm not a professional!
>> After using NTX, I'm still using DBFCDX. In fact, using DBFCDX indexes is
>> very fast also with many 10'000 of records.
>
> CDX indexes are faster and more reliable, mainly with regard to memo
> fields. I think not many people here still use .NTX. Nobody perhaps.
>
>> But, after changing to a Microsoft servers (Currently SBS2003) everything
>> has become slower!
>> Prior to Novell, I have had almost the same response time as a local
>> disk.
>> Now, compare the same PC with the same application is for some While
>> .not. Eof() cycle from 2 und 5 times slower.
>
> Novell was the fastest network system ever seen for PC's. Unfortunately,
> version 5 had so many quirks and errors (from the client side: and
> specifically with Clipper applications running under Windows 95 I had very
> hard times because of a bug in the Novell client in his first releases)
> and a ridicolous price to upgrade. So I moved to Linux/Samba.
>
> People noticed a performance degradation, but not so dramatic to worry
> about. And it was free, after all.
> But now things are getting worse... and it's not going to make me happier
> just to know that I'm not alone in the mess!
>
>> Regards
>> Otto
>
> Dan
|
|
0
|
|
|
|
Reply
|
H
|
1/15/2010 5:56:37 PM
|
|
Il Fri, 15 Jan 2010 12:56:37 -0500, H Davis ha scritto:
> Hi All
> Well I guess I am another old one. Started with Novell & RXnet (I
> think)
> in the middle 80's. I am still using Novell (version 6) - primarily just
> file sharing, now using GB switches & cards, & still NTX files. I can
> generate reports quicker off the server then I can off my local SATA
> 7200 rpm hard drive. I also have one install using BSD & Samba, which
> has performed well.
> One previous cause of file opening slowly was having a large number
> of
> deleted records at the start of the file or index order.
>
> Regards
> Harold
Hi Harold
Hust one information: if you open the same database with two different
computer at the same time (so DBF shared and 2 or more PC connected to
it), do you have a strong degradation in performance or not?
I'm just trying to understand if this problem I have is related to the
server or to the client. I remember that this problem were present since
WXP, (no problem with W98): just to see if well remember
--
Ciao, Alessandro
P.S.: I would be surprised if there were some young people using clipper
and successors!
|
|
0
|
|
|
|
Reply
|
Alessandro
|
1/16/2010 10:48:14 AM
|
|
"Alessandro Antonangeli" <alcati.r3m0v3th1s@alcati.com> ha scritto nel
messaggio news:his5he$s74$1@speranza.aioe.org...
> Hust one information: if you open the same database with two different
> computer at the same time (so DBF shared and 2 or more PC connected to
> it), do you have a strong degradation in performance or not?
I don't know. I made all my tests using only one user.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/16/2010 11:13:30 AM
|
|
Enrico Maria Giordano ha scritto:
> "Alessandro Antonangeli" <alcati.r3m0v3th1s@alcati.com> ha scritto nel
> messaggio news:his5he$s74$1@speranza.aioe.org...
>
>> Hust one information: if you open the same database with two different
>> computer at the same time (so DBF shared and 2 or more PC connected to
>> it), do you have a strong degradation in performance or not?
>
> I don't know. I made all my tests using only one user.
>
> EMG
We have in this environment 5 users and a dozen of 'externals' accessing
via the web interface, but since I have not (still) put up an access
tracing system, I really don't know for sure if someone is accessing the
system from outside (= if the Linux cgi is operating) and when.
Until a certain point, no performance degradation was perceived, even
with 5 users busy working on the tables (in the intranet). And that's
what should be. Normal. As expected. Of course, no comparison with local
access. We are on a lan, eh. A bit slower.
What we are experiencing, is a suddenly performance degradation that is
simply causing me to be called and asked if the whole thing is now worth
the effort to put it up. Figure it out! I was the main endorser of it.
I'm between a rock and a hard place, as to say. :-(
To EMG, Antonangeli and Davis (and of course to everyone interested in
the matter):
Maany thanks for the answering. I found them illuminating. I am trying
to put up a testcase to understand if it's a client (I lean on it) or a
server problem. I have the original executable in Clipper that does
(more or less) the same things the new xHarbour-compiled program does.
I say, I can test the exactly same program in different environments and
compiled with different compilers. Basically, the new xHarbour+wvw
program differs only in the user interface.
At present, the 3 executables seem to show the same slow behaviour. I
compiled (after some difficulties) the program with xHarbour 1.21 and
the newly-adapted wvw, and it seems to be even more slow than the
original 0.99+wvw and the even-more-original executable clipper 5.3 PURE.
I think I am really one out of a zillion that can perform those tests,
(because of my laziness in upgrading the original program, huh?), and
the subsequent substantial equivalence of the ancient clipper
executable, the recent xharbour 0.99 and the same source recompiled
(with no changes at all) with xharbour 1.21.
So now I'll try to connect an 'ancient' client running w98 and execute
the program from it. If it's faster, it's definitely a client problem.
Stay tuned if you are interested in the testing!
And I'll give a try to a client running Linux and executing the program
under Wine. Why not? Let's have fun!
I will post the code (a reduced sample at least) and the results.
Let's get ride of it.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/16/2010 10:49:20 PM
|
|
"Otto Haldi" <ohaldi@chateau.ch> ha scritto nel messaggio
news:j3n0l5trou7sktlgh8a88p1t18hhf2p47j@4ax.com...
> While .not. Eof() cycle from 2 und 5 times slower.
I just tried such a cycle and not found great difference between local hard
disk and remote hard disk (wireless network with my Vista notebook). I don't
understand...
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/16/2010 10:49:38 PM
|
|
"D.Campagna" <retsamtsop@danielecampagna.co.cc> ha scritto nel messaggio
news:hitfpi$bhs$1@nnrp-beta.newsland.it...
> So now I'll try to connect an 'ancient' client running w98 and execute the
> program from it. If it's faster, it's definitely a client problem.
> Stay tuned if you are interested in the testing!
I'm really interesting!
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/16/2010 11:36:57 PM
|
|
Enrico Maria Giordano ha scritto:
> "Otto Haldi" <ohaldi@chateau.ch> ha scritto nel messaggio
> news:j3n0l5trou7sktlgh8a88p1t18hhf2p47j@4ax.com...
>
>> While .not. Eof() cycle from 2 und 5 times slower.
>
> I just tried such a cycle and not found great difference between local hard
> disk and remote hard disk (wireless network with my Vista notebook). I don't
> understand...
>
I heard a lot of (meaningful) warnings about wireless access to DBF's.
It's generally discouraged as it can cause data corruption...
But we really need to post code used for testing and discuss it if we
want to get some real answer.
[ot]
Hey EMG, I know for sure you are really very qualified, you have deep
insight of Clipper, Fivewin, C programming, and God knows what else.
It seems you are on the list of contributors of xharbour and you in fact
did make some contribution, too.
Your mild-mannered and quite dubious comments come as a surprise. 15
years ago you was very sure about you, and you offered answers
(sometimes a bit.. ahem.. let's say over-conscious of your knowledge...)
to everyone had a doubt.
What's happening? I could have guessed you would have come out with some
hints ( and maybe some bitter comments :-). )
Your low-profile comments are really scaring me.
[end ot]
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/16/2010 11:49:18 PM
|
|
"D.Campagna" <retsamtsop@danielecampagna.co.cc> ha scritto nel messaggio
news:hitja0$di3$1@nnrp-beta.newsland.it...
> > I just tried such a cycle and not found great difference between local
> > hard disk and remote hard disk (wireless network with my Vista
> > notebook). I don't understand...
>
> I heard a lot of (meaningful) warnings about wireless access to DBF's.
> It's generally discouraged as it can cause data corruption...
I'm using this wireless network I have here at home only for testing
purpose.
> But we really need to post code used for testing and discuss it if we want
> to get some real answer.
Here it is:
REQUEST DBFCDX
FUNCTION MAIN()
LOCAL nSec
LOCAL cCli
RDDSETDEFAULT( "DBFCDX" )
USE E:\EMAGFW\GESR\CORSE
nSec = SECONDS()
WHILE !EOF()
cCli = FIELD -> cliente
SKIP
ENDDO
? "Assign and skip", SECONDS() - nSec
nSec = SECONDS()
INDEX ON DTOS( FIELD -> data ) + STR( FIELD -> numero, 3 ) TO CORSE FOR
!EMPTY( FIELD -> numero ) TEMPORARY
? "Create index", SECONDS() - nSec
nSec = SECONDS()
WHILE !EOF()
cCli = FIELD -> cliente
SKIP
ENDDO
? "Assign and skip with index", SECONDS() - nSec
CLOSE
FERASE( "CORSE.CDX" )
INKEY( 0 )
RETURN NIL
> Your mild-mannered and quite dubious comments come as a surprise. 15 years
> ago you was very sure about you, and you offered answers (sometimes a
> bit.. ahem.. let's say over-conscious of your knowledge...) to everyone
> had a doubt.
> What's happening? I could have guessed you would have come out with some
> hints ( and maybe some bitter comments :-). )
> Your low-profile comments are really scaring me.
I simply can't understand what's going on. Experiments show contraddictory
results and I really don't know what is happening. If you can confirm that
the problem is the new Windows versions then I will try to imagine some sort
of solution. Otherwise I'm simply lost for now.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/17/2010 12:01:45 AM
|
|
Enrico Maria Giordano ha scritto:
>
>> But we really need to post code used for testing and discuss it if we want
>> to get some real answer.
>
> Here it is:
>
> REQUEST DBFCDX
>
>
> FUNCTION MAIN()
>
> LOCAL nSec
>
> LOCAL cCli
>
> RDDSETDEFAULT( "DBFCDX" )
>
> USE E:\EMAGFW\GESR\CORSE
>
> nSec = SECONDS()
>
> WHILE !EOF()
> cCli = FIELD -> cliente
> SKIP
> ENDDO
>
> ? "Assign and skip", SECONDS() - nSec
>
> nSec = SECONDS()
>
> INDEX ON DTOS( FIELD -> data ) + STR( FIELD -> numero, 3 ) TO CORSE FOR
> !EMPTY( FIELD -> numero ) TEMPORARY
>
> ? "Create index", SECONDS() - nSec
>
> nSec = SECONDS()
>
> WHILE !EOF()
> cCli = FIELD -> cliente
> SKIP
> ENDDO
>
> ? "Assign and skip with index", SECONDS() - nSec
>
> CLOSE
>
> FERASE( "CORSE.CDX" )
>
> INKEY( 0 )
>
> RETURN NIL
ACK.
[italian ON - if translation needed please ask]
Si ma io ho notato il rallentamento sul sempice open, qui il tempo �
misurato su operazioni susseguenti.
Fino a luned� niente test, sono in giro. Il vero applicativo apre
diverse tabelle e sembra che il ritardo sia in fase di USE, mentre dopo
tutto fila liscio.
Ho in mente anche di provare a scrivere una funzioncella che apre i DBF
con FOPEN, questo bypassa i RDD. far� qualcosa del genere:
t:=seconds()
use clienti
(misura quanro tempo � passato)
use
[aridanga]
t=seconds()
use clienti index clienti
[misura t]
use
a qesto punto test con fopen()
ecc.
Naturalmente prima su XP, poi con W98 e poi (eventualmente) con Wine su
Linux.
Ti faccio sapere appena ho qualche lume.
Tempo fa ho visto che postavi relativamente a SQL.
Hai qualche indicazione di migliori performances?
Intanto grazie e a presto.
> EMG
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/17/2010 2:04:55 AM
|
|
"Enrico Maria Giordano" <e.m.giordano@emagsoftware.it> ha scritto nel
messaggio news:4b525369$0$818$4fafbaef@reader5.news.tin.it...
> USE E:\EMAGFW\GESR\CORSE
I made a very very stupid error! I used a local DBF! These are the results
with local and remote DBF:
Local
0.28
0.38
0.25
Remote
125
15
131
So my conclusion is that my network is incredibly slow! Ok, it's a wireless
network but it seems too slow anyway.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/17/2010 12:20:17 PM
|
|
"D.Campagna" <retsamtsop@danielecampagna.co.cc> ha scritto nel messaggio
news:hitr8a$hnp$1@nnrp-beta.newsland.it...
> Si ma io ho notato il rallentamento sul sempice open, qui il tempo �
> misurato su operazioni susseguenti.
Here is an Open test:
REQUEST DBFCDX
FUNCTION MAIN()
LOCAL nSec
LOCAL i
RDDSETDEFAULT( "DBFCDX" )
nSec = SECONDS()
FOR i = 1 TO 100
USE CORSE
NEXT
? "Open", SECONDS() - nSec
INKEY( 0 )
RETURN NIL
Results:
Local
0.02
Remote
2.25
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/17/2010 12:29:34 PM
|
|
"D.Campagna" <retsamtsop@danielecampagna.co.cc> ha scritto nel messaggio
news:hitr8a$hnp$1@nnrp-beta.newsland.it...
> Ti faccio sapere appena ho qualche lume.
Ok, grazie.
> Tempo fa ho visto che postavi relativamente a SQL.
> Hai qualche indicazione di migliori performances?
Purtroppo no. Non ho mai fatto test comparativi seri.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/17/2010 12:31:13 PM
|
|
Hi
First some tests I did (but keep in mind I have a WXP on a Virtual
machine).
Open 1000 times a DBF (in shared mode)
Locally 0,16 seconds
On a shared drive 3,82 seconds (25x time slower)
On a shared drive, but the file opened with another process, 2,64 seconds
(16x time slower, it seems the SO is helped from beeing already opened
from the other process)
If another process has the same file opened from ANOTHER machine:
- file opening time is 52x slower than local, 2x slower than on lan
- field write is 120x time slower than local, 100x time slower than on lan
- field reading is 100x time slower than local, 23x time slower than on
lan
At the end, the code (mostly from EMG) used for the test. I created a dbf
with 3 field with 200 records
I really do not think (not tested) than the records number can have
influence on file opening
One possible reason for your slow performance is that some CGI process
leaves DBF open. I can suggest to check if:
1) the problems come out when a CGI application have run
2) if some CGI application is still alive
HTH
****CODE****
REQUEST DBFCDX
FUNCTION MAIN()
LOCAL nSec
LOCAL i
LOCAL cCli
RDDSETDEFAULT( "DBFCDX" )
nSec = SECONDS()
For i=1 to 1000
USE Prova SHARED
NEXT
? "Apertura DBF", SECONDS() - nSec
nSec = SECONDS()
USE Prova SHARED
For i=1 to 10
GO TOP
WHILE !EOF()
RLOCK()
FIELD -> cliente:=STR(RECNO())
FIELD -> Numero:=RECNO()
FIELD -> Data:=Date()
SKIP
ENDDO
NEXT
? "Assegnamento campi", SECONDS() - nSec
nSec = SECONDS()
For i=1 to 100
USE Prova SHARED
GO TOP
WHILE !EOF()
cCli = FIELD -> cliente
SKIP
ENDDO
NEXT
? "Assign and skip", SECONDS() - nSec
****END CODE****
--
Ciao, Alessandro
|
|
0
|
|
|
|
Reply
|
Alessandro
|
1/17/2010 6:50:28 PM
|
|
Alessandro (and everyone else),
>Open 1000 times a DBF (in shared mode)
>Locally 0,16 seconds
>On a shared drive 3,82 seconds (25x time slower)
>On a shared drive, but the file opened with another process, 2,64 seconds
>(16x time slower, it seems the SO is helped from beeing already opened
>from the other process)
Have you considered the usual registry tweaks like, for example,
turning off oplocks? Nick Ramsay's NT Networking page has been
"required reading" for Clipper programmers for many years, and the
solutions apply equally for running xHarbour apps on network shares.
Take a look here:
http://www.witzendcs.co.uk/nt_networking.html
For further info, follow the links on the page, and/or search the web
and the MS knowledgebase for each setting.
Regards,
Klas
-------
klas dot engwall at engwall dot com
http://www.engwall.com/clipper/
The LFN Library for Clipper
The LanMan Library for Clipper
The NFPAT1A Timeslice release patch for the Nanforum Toolkit
|
|
0
|
|
|
|
Reply
|
klas
|
1/17/2010 11:48:17 PM
|
|
Dear Enrico Maria Giordano:
On Jan 17, 5:20=A0am, "Enrico Maria Giordano"
<e.m.giord...@emagsoftware.it> wrote:
> "Enrico Maria Giordano" <e.m.giord...@emagsoftware.it> ha scritto nel
> messaggionews:4b525369$0$818$4fafbaef@reader5.news.tin.it...
>
> > =A0 =A0USE E:\EMAGFW\GESR\CORSE
>
> I made a very very stupid error! I used a local DBF!
> These are the results with local and remote DBF:
>
> Local
>
> 0.28
> 0.38
> 0.25
>
> Remote
>
> 125
> 15
> 131
>
> So my conclusion is that my network is incredibly
> slow! Ok, it's a wireless network but it seems too
> slow anyway.
Wireless and DBF should always be considered to be mutually
exclusive. Too much risk of damaging the file.
How do you open the file, by "D:\path\filename" or "\\server\path
\filename"?
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/18/2010 3:08:31 AM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:78426522-f085-452e-a783-8b137f76ba9b@22g2000yqr.googlegroups.com...
> Wireless and DBF should always be considered to be mutually
> exclusive. Too much risk of damaging the file.
As I already said, I'm using this network only for testing purpose.
> How do you open the file, by "D:\path\filename" or "\\server\path
> \filename"?
The former. But I already tried the latter and find no difference.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/18/2010 8:44:25 AM
|
|
> xharbour 0.99
Have you tested this with Harbour instead of xHarbour ?
The RDD guys are not playing wth xHarbour anymore...
--
Maur�cio Faria
|
|
0
|
|
|
|
Reply
|
Maur
|
1/18/2010 1:15:20 PM
|
|
"Maur�cio Ventura Faria" <mauricio@farmacia.com.br> ha scritto nel messaggio
news:hj1mtc$uq5$1@news.eternal-september.org...
> Have you tested this with Harbour instead of xHarbour ?
Yes, I did. No difference at all.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/18/2010 2:19:39 PM
|
|
On Jan 18, 1:44=A0am, "Enrico Maria Giordano"
<e.m.giord...@emagsoftware.it> wrote:
> "dlzc" <dl...@cox.net> ha scritto nel messaggionews:78426522-f085-452e-a7=
83-8b137f76ba9b@22g2000yqr.googlegroups.com...
>
> > Wireless and DBF should always be considered
> > to be mutually exclusive. =A0Too much risk of
> > damaging the file.
>
> As I already said, I'm using this network only for
> testing purpose.
Then I will quit whining.
> > How do you open the file, by "D:\path\filename"
> > or "\\server\path\filename"?
>
> The former. But I already tried the latter and find
> no difference.
What OpSys are you running this on? I suspect M$ of fine tuning
differences to try and force people off of *nix, due to poor
performance with their desktop machines. You may have already stated
this here. I think someone said the data files resided on Linux.
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/18/2010 5:05:20 PM
|
|
On Jan 15, 11:56=A0am, "H Davis" <hbda...@sympatico.ca> wrote:
> Hi All
> =A0 =A0 Well I guess I am another old one. Started with Novell & RXnet (I=
think)
> in the middle 80's. I am still using Novell (version 6) - primarily just
> file sharing, now using GB switches & cards, & still NTX files. I can
> generate reports quicker off the server then I can off my local SATA 7200
> rpm hard drive. I also have one install using BSD & Samba, which has
> performed well.
> =A0 =A0 One previous cause of file opening slowly was having a large numb=
er of
> deleted records at the start of the file or index order.
>
> Regards
> Harold
>
> "D.Campagna" <retsamt...@danielecampagna.co.cc> wrote in message
>
> news:hiq1lj$ckk$1@nnrp-beta.newsland.it...
>
>
>
> > Otto Haldi ha scritto:
> >> On Thu, 14 Jan 2010 21:56:23 +0100, "D.Campagna"
> >> <ynnadre...@tiscalinet.it> wrote:
>
> >> Hello to all,
> >> Here my little experiences. Sorry, I'm not a professional!
> >> After using NTX, I'm still using DBFCDX. In fact, using DBFCDX indexes=
is
> >> very fast also with many 10'000 of records.
>
> > CDX indexes are faster and more reliable, mainly with regard to memo
> > fields. I think not many people here still use .NTX. Nobody perhaps.
>
> >> But, after changing to a Microsoft servers (Currently SBS2003) everyth=
ing
> >> has become slower!
> >> Prior to Novell, I have had almost the same response time as a local
> >> disk.
> >> Now, compare the same PC with the same application is for some While
> >> .not. Eof() cycle from 2 und 5 times slower.
>
> > Novell was the fastest network system ever seen for PC's. Unfortunately=
,
> > version 5 had so many quirks and errors (from the client side: and
> > specifically with Clipper applications running under Windows 95 I had v=
ery
> > hard times because of a bug in the Novell client in his first releases)
> > and a ridicolous price to upgrade. So I moved to Linux/Samba.
>
> > People noticed a performance degradation, but not so dramatic to worry
> > about. And it was free, after all.
> > But now things are getting worse... and it's not going to make me happi=
er
> > just to know that I'm not alone in the mess!
>
> >> Regards
> >> Otto
>
> > Dan- Hide quoted text -
>
> - Show quoted text -
Duplicate key values is a big slowdown. Creating unique keys and
packing files can provide a big performance boost.
|
|
0
|
|
|
|
Reply
|
Texextra
|
1/18/2010 5:07:19 PM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:c38ba18b-e0b3-40ea-89b0-6201dd69dc77@21g2000yqj.googlegroups.com...
> What OpSys are you running this on?
The shared drive is on Windows Vista, the client is Windows XP.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/18/2010 5:13:56 PM
|
|
On Jan 18, 10:13=A0am, "Enrico Maria Giordano"
<e.m.giord...@emagsoftware.it> wrote:
> "dlzc" <dl...@cox.net> ha scritto nel messaggionews:c38ba18b-e0b3-40ea-89=
b0-6201dd69dc77@21g2000yqj.googlegroups.com...
>
> > What OpSys are you running this on?
>
> The shared drive is on Windows Vista, the client
> is Windows XP.
I find a huge number of complaints on M$ website relating to the
slowness of Vista for "discrete file operations" (copy, delete,
rename). Presumably this would affect you with even an open.
Something to do with recreating thumbnails, maybe.
But did you indicate that this slowness started with a particular
revision of xHarbour?
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/18/2010 7:01:47 PM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:fd4f09ef-3d49-4c9d-8bde-ca70dc2d8f9b@j14g2000yqm.googlegroups.com...
> I find a huge number of complaints on M$ website relating to the
> slowness of Vista for "discrete file operations" (copy, delete,
> rename). Presumably this would affect you with even an open.
I know, but this is only a test. The real slowness has been found by my
clients in their PC with various configurations.
> But did you indicate that this slowness started with a particular
> revision of xHarbour?
I'm not sure of anything anymore... :-(
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/18/2010 7:23:29 PM
|
|
Enrico Maria Giordano wrote:
> "dlzc" <dlzc1@cox.net> ha scritto nel messaggio
> news:c38ba18b-e0b3-40ea-89b0-6201dd69dc77@21g2000yqj.googlegroups.com...
>
>> What OpSys are you running this on?
>
> The shared drive is on Windows Vista, the client is Windows XP.
>
> EMG
>
> --
> EMAG Software Homepage: http://www.emagsoftware.it
> The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
> The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
> The EMG Music page: http://www.emagsoftware.it/emgmusic
>
>
Have you turned off the opportunistic locking?
With Vista you might not be able to turn it off.
Check this: http://support.microsoft.com/kb/296264
|
|
0
|
|
|
|
Reply
|
GDFord
|
1/18/2010 9:26:01 PM
|
|
"GDFord" <gale.ford@wwrowland.com> ha scritto nel messaggio
news:hj2jrc$fba$1@news.eternal-september.org...
> Have you turned off the opportunistic locking?
> With Vista you might not be able to turn it off.
> Check this: http://support.microsoft.com/kb/296264
My friends, you missed the point: my test environment has nothing to do with
the problem we are discussing.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/18/2010 10:01:04 PM
|
|
Dear D.Campagna:
On Jan 13, 3:18=A0pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> Hi all, I have a problem that is really puzzling me
> and annoying my customers, and I am not sure
> even on what to investigate first. Any hint will be
> appreciated.
Can you give us an update on this?
Do you access the remote resources via "drive:/path/filename" or "\
\servername\path\filename"?
What is the status of "opportunistic locking"? (Note that this should
have no effect on opening a file, but on moving about in it.)
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/18/2010 11:07:15 PM
|
|
dlzc ha scritto:
> Dear D.Campagna:
>
> On Jan 13, 3:18 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
>> Hi all, I have a problem that is really puzzling me
>> and annoying my customers, and I am not sure
>> even on what to investigate first. Any hint will be
>> appreciated.
Here I am with first results of testing.
Sorry for i'm late, I had some drawbacks unrelated with this argument.
>
> Can you give us an update on this?
>
> Do you access the remote resources via "drive:/path/filename" or "\
> \servername\path\filename"?
Good point, but I kept things very dumb. Since the application resides
in the same directory of data, it accesses the tables via their name
only, without any path.
Now, strange enough, I tried to open the files with DBU (recompiled with
Harbour, and recompiled in plain old Clipper 5.3, with the only
modification regarding DBFCDX, and it has the expected speed. The file
opening takes an instant.
True is, my program does not perform a simple USE. All file opening is
managed by a function (sga(), means Set/Get Area...), and manages to
open, reopen, set the RDD, indexes, exclusive or shared etc. (refer to
dbusearea... is similar)
I can post the source, but since it's rather ugly (ehm...) I'll give you
at first the results and the way I got them.
Environment:
Server Linux (Zenwalk), kernel 2.6.25.4, Samba is 3.2.3
A small standard network with a couple of switch 100 Mb/sec
PC 1, Celeron 1.4 Ghz with XP Home SP3, 384 Mb RAM - runs Avast
antivirus (if it matters)
PC 2, Athlon 64 3500+, 2Gb RAM, XP Professional SP2 (not updated) - runs
Avast too and a bunch of resident programs (Daemon tools, Messenger
etc.) To test Wine it runs Slackware 12.
PC 3, an old K6/500 running Windows 98 (Yes, I know... no comment
please...) no antivirus at all.
PC 4: a Duron 1.1 Ghz with 512 Mb RAM, running Linux Zenwalk or Windows
XP Professional SP2, always as a server.
>
> What is the status of "opportunistic locking"? (Note that this should
> have no effect on opening a file, but on moving about in it.)
>
> David A. Smith
I didn't (still) touch any parameter in the win registry, nor set any
dbflockscheme. All plain vanilla.
Method of testing:
I did not put up a test program, rather added the following code to my
existing application:
// put up a flag
log_op:=.t.
Added the following before and after file operations:
if log_op
reglog(<cmessage>)
endif
function reglog is:
function reglog(ctxt)
local curf:=select()
public hlf:=0
if .not. file ("logfile.dbf")
dbcreate("logfile",{{"data","D",10,0},{"ora","C",8,0},{"user","N",2,0},{"oper","C",60,0},{"secondi","N",8,2},{"diff","N",8,2}})
endif
if hlf=0
hlf=sga("logfile") // means more or less dbusearea, returns area
number (select())
else
select(hlf)
if lower(alias())!="logfile"
hlf=sga("logfile")
reglog("Reopen logfile")
endif
endif
pvsec=secondi
cursec=seconds()
append blank
replace data with date()
replace ora with time()
replace user with nodeid
replace oper with ctxt
replace secondi with cursec
replace diff with cursec-pvsec
select(curf)
return nil
This function creates "logfile" and keeps it opened, then adds a record
with the timings.
The application is compiled with xHarbour latest cvs and WVW. RDD is
CDX. All files are opened in shared mode.
Files are varying in size from very small to 2 Mb. Real application
(test will follow as soon as I'll put my hands on the REAL environment)
has files about 40 Mb wide. And the problems.
Test 1
------
only one pc accesses data (pc 1) win->server Linux
open a small file 0,02
open a 165K file 4,19
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,04
opens 2 more files quite small: 0,06
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,06
Set relation to some files: 0,01/not measured (0,00)
Some other file opened: 0,11
The second PC does the same operations, while files are in use by the
first one (pc 2) win->server Linux
open a small file 0,01
open a 165K file 2,57
open a small file 0,02
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,06
opens 2 more files quite small: 0,08
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some file: 0,02
Some other file opened: 0,14
Note to test 1
--------------
Reverting the order, say the Celeron-powered enters as second, shows
that the more powerful the pc, the fastest the access. But we are
talking of tenth of seconds.
I've also not been able to access from tghe Win98 PC the share, after a
bit of tinkering I gave up. Dunno. Samba 3.xx maybe needs some
configuration to accord with such an ancient thing.
Now let's change the server, PC 4 acts now as a server under Windows XP
professional SP2 not upgraded.
Test 2
------
Pc 1 accesses data (WinXP->server WinXP)
open a small file 0,03
open a 165K file n.d.
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,08
opens 2 more files quite small: 0,10
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some files: 0,01
Some other file opened: 0,14
(pc 2) winXP->server WinXP
open a small file 0,03
open a 165K file 4,57
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,09
opens 2 more files quite small: 0,11
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some file: 0,02
Some other file opened: 0,19
Pc3 (note: with a 10 Mb/sec network card) Win98->server WinXP
open a small file 0,00 (not measurable)
open a 165K file 4,78
open a small file 0,00 (not measurable)
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,06
opens 2 more files quite small: 0,11
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,16
Set relation to some file: 0,00 (not measurable)
Some other file opened: 0,22
And so on.
Conclusions:
In my network, everything seems to work smoothly, at least for 3 users.
I tried to start some other sessions from the XP clients with enough
resources, and I did not experienced significant lags. A note must be
given: the old Win98 machine, with an obsolete hardware and a network
card only able to 10 Mb/sec (but it is the legendary 3Com
double-buffering network card...) acts as new powerful machines. Gosh!
But now I'll try the real environment, where things are going wrong.
Maybe the antivirus? They have Panda and McAfee, while I have Avast or
nothing at all.
No need to test Wine for now, xHarbour here runs as expected, IMO.
Stay tuned and please comment, I'm not sure the way I made the test is
agreeded/acceptable.
D. Campagna
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 12:55:21 PM
|
|
H Davis ha scritto:
> One previous cause of file opening slowly was having a large number of
> deleted records at the start of the file or index order.
>
> Regards
> Harold
Right, and if this is the problem I am a bit uncomfortable, in fact the
way my program manages records never needs a pack, they are deleted,
marked as 'available' and reused when new data are added. Uh-oh.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 1:07:21 PM
|
|
Klas Engwall ha scritto:
>
> Have you considered the usual registry tweaks like, for example,
> turning off oplocks? Nick Ramsay's NT Networking page has been
> "required reading" for Clipper programmers for many years, and the
> solutions apply equally for running xHarbour apps on network shares.
> Take a look here:
>
> http://www.witzendcs.co.uk/nt_networking.html
>
> For further info, follow the links on the page, and/or search the web
> and the MS knowledgebase for each setting.
>
> Regards,
> Klas
>
Many thanks Klas - bookmarked.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 1:19:58 PM
|
|
Dear D.Campagna:
On Jan 19, 5:55=A0am, "D.Campagna" <retsamt...@danielecampagna.co.cc>
wrote:
> dlzc ha scritto:
> > On Jan 13, 3:18 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> >> Hi all, I have a problem that is really puzzling me
> >> and annoying my customers, and I am not sure
> >> even on what to investigate first. Any hint will be
> >> appreciated.
>
> Here I am with first results of testing.
> Sorry for i'm late, I had some drawbacks unrelated
> with this argument.
Surely not an argument...
> > Can you give us an update on this?
>
> > Do you access the remote resources via
> > "drive:/path/filename" or "\\servername\path\filename"?
>
> Good point, but I kept things very dumb. Since the
> application resides in the same directory of data,
> it accesses the tables via their name only, without
> any path.
Not good enough. Can you display / record drive and path information
for the files from inside your application?
> Now, strange enough, I tried to open the files with
> DBU (recompiled with Harbour, and recompiled in
> plain old Clipper 5.3, with the only modification
> regarding DBFCDX, and it has the expected speed.
> The file opening takes an instant.
>
> True is, my program does not perform a simple
> USE. All file opening is managed by a function
> (sga(), means Set/Get Area...), and manages to
> open, reopen, set the RDD, indexes, exclusive or
> shared etc. (refer to dbusearea... is similar)
> I can post the source, but since it's rather ugly
> (ehm...) I'll give you at first the results and the way
> I got them.
....
I'd suggest you parse your SGA function, and record times for each
step within it.
> Conclusions:
> In my network, everything seems to work smoothly,
> at least for 3 users. I tried to start some other
> sessions from the XP clients with enough
> resources, and I did not experienced significant lags.
> A note must be given: the old Win98 machine, with
> an obsolete hardware and a network card only able
> to 10 Mb/sec (but it is the legendary 3Com
> double-buffering network card...) acts as new powerful
> machines. Gosh!
Yes, "advancement" as the marketers want to tell us is surely NOT
improvement. But then, I tend to buy based on "value" rather than
absolute specs...
> But now I'll try the real environment, where things
> are going wrong. Maybe the antivirus? They have
> Panda and McAfee, while I have Avast or nothing
> at all.
I use ClamWin. AVG had to die because it interfered with gaming.
> No need to test Wine for now, xHarbour here runs
> as expected, IMO. Stay tuned and please
> comment, I'm not sure the way I made the test is
> agreeded/acceptable.
You are making this more complex, clouding the issue in my opinion.
Clipper apps work via NTVDM, and do so via an assigned drive letter
for a network resource. I suspect your DBU variant in xHarbour *also*
access the files via a drive letter assignment (unless you seriously
modified its code).
Map a drive letter to the remote resource, and try accessing the files
that way with xHarbour. Just for grins. Please. This is a known and
documented slowdown for file access in Windoze.
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/19/2010 2:31:55 PM
|
|
D.Campagna wrote:
> Here I am with first results of testing.
> Sorry for i'm late, I had some drawbacks unrelated with this argument.
I'm sorry I have not really followed the details of this but:
> But now I'll try the real environment, where things are going wrong. Maybe
> the antivirus? They have Panda and McAfee, while I have Avast or nothing at
> all.
I have found McAfee to be a real dog about opening files, if you can switch both
of these for a short test I would do it.
Regards
Alex
|
|
0
|
|
|
|
Reply
|
Alex
|
1/19/2010 3:06:52 PM
|
|
dlzc ha scritto:
> Dear D.Campagna:
....
Quick update (before to go through any other argument):
A file has 10000+ records deleted just at the beginning. It takes 9,32
seconds to open. Gotcha!
Other tables are opened with timing comparable to the previous test.
It seems that the whole thing was a well-documented issue. Oops.
Now I'll pack the file, rebuild indexes and see what happens.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 3:57:44 PM
|
|
Alex Strickland ha scritto:
> D.Campagna wrote:
>
>> Here I am with first results of testing.
>> Sorry for i'm late, I had some drawbacks unrelated with this argument.
>
> I'm sorry I have not really followed the details of this but:
>
> > But now I'll try the real environment, where things are going wrong.
> Maybe
> > the antivirus? They have Panda and McAfee, while I have Avast or
> nothing at
> > all.
>
> I have found McAfee to be a real dog about opening files, if you can
> switch both of these for a short test I would do it.
>
> Regards
> Alex
Thanks Alex, McAfee after having been IMO quite a good product in the
past years, has definitely annoyed me and I am dumping it in favor of
Panda and Kaspersky. Not only it is heavy, but the last version has
problems in recognizing the licence number provided (a new idea) and
forcing the user (or the security referrer, me) to uninstall completely
with MCRT (or whatever - the McAfee Removal Tool), download the right
version, reinstall etc. A pain. All this time-consuming task costs a lot
more than the product itself and it's hard to make understand it to
customers.
Anyway, the main issue was due to the deleted records at the beginning
of a quite large file (10000 deleted over a total of 60000). I still
don't get why DBU opened the file in half a second, while my application
took 9/15 seconds depending on the PC involved, but right now, after a
pack, things are OK.
I want to continue investigating if it's possible to improve
performances, but now the thing is less compelling... :-)
It seems that my laptop with Avast, a Celeron with 384 Mb running XP
Home, not really very powerful, is a rocket in comparison to a desktop
Athlon 1800+ with Panda, 512 Mb and XP home on the same network.
But I'm not sure I can blame Panda, more testing is needed.
Regards
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 5:05:18 PM
|
|
dlzc ha scritto:
> Dear D.Campagna:
>
>
> Surely not an argument...
And forget my lazy wording...
"argomento" is probably better translated with "subject" :-)
>
>>> Can you give us an update on this?
>>> Do you access the remote resources via
>>> "drive:/path/filename" or "\\servername\path\filename"?
>> Good point, but I kept things very dumb. Since the
>> application resides in the same directory of data,
>> it accesses the tables via their name only, without
>> any path.
>
> Not good enough. Can you display / record drive and path information
> for the files from inside your application?
>
Well, I simply pass tho the open DBF function the filename:
fhandle=sga("myfile") and other parameters. Then sga tries a net_use,
quite the same function in the example file 'Locks.prg' from good old
Clipper if shared access is requested, and returns 0 if operation
failed. I map usually the remote shares with DOS-style letters, e.g.
k:\whatever\myfile...
The application is started by a batch file that tests the existence of
k:\whatever\myapp.exe and if not tries e.g.
net use k: \\server\public. Very basic.
>
> ....
> I'd suggest you parse your SGA function, and record times for each
> step within it.
I think I should really do. I don't get why DBU did not show any lag,
opening the infamous file in half a second.
>> A note must be given: the old Win98 machine, with
>> an obsolete hardware and a network card only able
>> to 10 Mb/sec (but it is the legendary 3Com
>> double-buffering network card...) acts as new powerful
>> machines. Gosh!
>
> Yes, "advancement" as the marketers want to tell us is surely NOT
> improvement. But then, I tend to buy based on "value" rather than
> absolute specs...
Still, not an easy task...
>
> I use ClamWin. AVG had to die because it interfered with gaming.
Really? I gave a try to Clamwin but at the time it hadn't real-time
monitoring (and IIRC real-time mail scan)... but it was some years ago.
AVG performs quite well in my experience.
> You are making this more complex, clouding the issue in my opinion.
> Clipper apps work via NTVDM, and do so via an assigned drive letter
> for a network resource. I suspect your DBU variant in xHarbour *also*
> access the files via a drive letter assignment (unless you seriously
> modified its code).
It's the old DBU, I only added REQUEST DBFCDX and RDDSETDEFAULT "DBFCDX".
>
> Map a drive letter to the remote resource, and try accessing the files
> that way with xHarbour. Just for grins. Please. This is a known and
> documented slowdown for file access in Windoze.
I was not aware of it. Many thanks. All my applications, as I said, work
that way. Oops. It seems I have to review my code.
>
> David A. Smith
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/19/2010 5:37:29 PM
|
|
Dear D.Campagna:
We've about beat this horse until it is fully dead...
On Jan 19, 10:37=A0am, "D.Campagna" <retsamt...@danielecampagna.co.cc>
wrote:
> dlzc ha scritto:
....
> > Surely not an argument...
>
> And forget my lazy wording...
> "argomento" is probably better translated
> with "subject" :-)
Or topic... and "subject" would be more common usage.
> > ....
> > I'd suggest you parse your SGA function,
> > and record times for each step within it.
>
> I think I should really do. I don't get why DBU
> did not show any lag, opening the infamous
> file in half a second.
Worth spending an hour on, if you have it. *It* does not use "SGA()".
....
> > I use ClamWin. =A0AVG had to die because it
> > interfered with gaming.
>
> Really?
> AVG performs quite well in my experience.
It worked well until I invoked "Halflife" or something similar, then
the games locked up. May have since been fixed. Your customers may
not have the "attention span" issues I do... ;>)
> I gave a try to Clamwin but at the time it hadn't
> real-time monitoring (and IIRC real-time mail
> scan)... but it was some years ago.
Better now. May still not be to your tastes. Still free. And I do
not insist everyone use the same virus scanner, since variety makes
the virus creaters job harder.
....
> > Map a drive letter to the remote resource,
> > and try accessing the files that way with
> > xHarbour. =A0Just for grins. =A0Please. =A0This is
> > a known and documented slowdown for
> > file access in Windoze.
>
> I was not aware of it. Many thanks. All my
> applications, as I said, work that way. Oops.
> It seems I have to review my code.
It will provide a penalty only on file open, so it seemd like a
candidate... Try it once, and if it is noticeable, *then* revist your
code. Otherwise, it is "ancient lore" and not worth worrying about
anymore.
No response required.
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/19/2010 7:00:26 PM
|
|
>
> I think I should really do. I don't get why DBU did not show any lag,
> opening the infamous file in half a second.
Perhaps a different setting of SET DELETED ON / OFF
Not familiar with DBU as to whether you can set this option before opening a
file.
Harold
|
|
0
|
|
|
|
Reply
|
H
|
1/19/2010 7:07:16 PM
|
|
"dlzc" <dlzc1@cox.net> ha scritto nel messaggio
news:17341e88-faed-4bc1-946b-90dd88b57aef@b2g2000yqi.googlegroups.com...
> > AVG performs quite well in my experience.
>
> It worked well until I invoked "Halflife" or something similar, then
> the games locked up.
I use AVG since many years. Honestly, I don't like it much due to the
slowness of its shield component. Anyway, I'm a gamer and played many 3D
games in the years without having any problems with AVG.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/19/2010 10:23:18 PM
|
|
"H Davis" <hbdavis@sympatico.ca> ha scritto nel messaggio
news:hj4vri$2lo$1@news.eternal-september.org...
> Perhaps a different setting of SET DELETED ON / OFF
Yes, I think so too.
EMG
--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg
The EMG Music page: http://www.emagsoftware.it/emgmusic
|
|
0
|
|
|
|
Reply
|
Enrico
|
1/19/2010 10:24:08 PM
|
|
David,
>What is the status of "opportunistic locking"? (Note that this should
>have no effect on opening a file, but on moving about in it.)
Actually, it does. When UseOpportunisticLocking is turned on (set to
1) on the workstations and EnableOplocks is turned on (set to 1) on
the server, an oplock on the entire file will be granted the first
workstation that opens the file in non-exclusive mode. When an
additional workstation requests opening of the same file, the server
must negotiate the oplock with the first workstation, and the first
workstation must flush writes and locks and release the oplock. This
may take some time, and the second workstation will have to wait for
it to finish.
See Q129202, for example
Regards,
Klas
-------
klas dot engwall at engwall dot com
http://www.engwall.com/clipper/
The LFN Library for Clipper
The LanMan Library for Clipper
The NFPAT1A Timeslice release patch for the Nanforum Toolkit
|
|
0
|
|
|
|
Reply
|
klas
|
1/19/2010 11:02:39 PM
|
|
Dear Klas Engwall:
On Jan 19, 4:02=A0pm, klas.engw...@nospam.please (Klas Engwall) wrote:
<dlzc incorrectly said>
> > What is the status of "opportunistic locking"? =A0(Note that
> > this should have no effect on opening a file, but on moving
> > about in it.)
>
> Actually, it does. When UseOpportunisticLocking is turned
> on (set to 1) on the workstations and EnableOplocks is
> turned on (set to 1) on the server, an oplock on the entire
> file will be granted the first workstation that opens the file
> in non-exclusive mode. When an additional workstation
> requests opening of the same file, the server must negotiate
> the oplock with the first workstation, and the first
> workstation must flush writes and locks and release the
> oplock. This may take some time, and the second workstation
> will have to wait for it to finish.
>
> See Q129202, for example
Thanks for the correction.
If the server is Linux, as in this case (the OP has a Linux server,
some Windoze machines that have issues on opening, and internet users
that are happy as clams)... there may be no effect?
David A. Smith
|
|
0
|
|
|
|
Reply
|
dlzc
|
1/20/2010 2:40:32 AM
|
|
D.Campagna wrote:
> Anyway, the main issue was due to the deleted records at the beginning
> of a quite large file (10000 deleted over a total of 60000). I still
> don't get why DBU opened the file in half a second, while my application
> took 9/15 seconds depending on the PC involved, but right now, after a
> pack, things are OK.
> I want to continue investigating if it's possible to improve
> performances, but now the thing is less compelling... :-)
Indexes?
Glad you at least got the thing sorted.
Regards
Alex
|
|
0
|
|
|
|
Reply
|
Alex
|
1/20/2010 8:22:23 AM
|
|
David,
>Thanks for the correction.
>
>If the server is Linux, as in this case (the OP has a Linux server,
>some Windoze machines that have issues on opening, and internet users
>that are happy as clams)... there may be no effect?
I suppose that depends on how closely the Samba folks have followed
Microsoft's footsteps regarding the stupid parts of the MS networking
default settings <g>. Sorry, I don't have the answer to that question.
But what is quite interesting in Dan's case is that although he had a
classic Clipper problem (tons of deleted records) that caused massive
delays for the SMB users, the same files could, if I understood it
correctly, be opened instantly by the CGI. Could it be that the CGI
does the same skip over all those deleted records so much more
efficiently than the SMB clients do so the real problem just isn't
noticed?
Regards,
Klas
-------
klas dot engwall at engwall dot com
http://www.engwall.com/clipper/
The LFN Library for Clipper
The LanMan Library for Clipper
The NFPAT1A Timeslice release patch for the Nanforum Toolkit
|
|
0
|
|
|
|
Reply
|
klas
|
1/20/2010 11:55:05 PM
|
|
D.Campagna ha scritto:
Many thanks to all, and a special thank to H. Davis that put me in the
right track.
The problem has been solved, it was quite a trivial one, the well-known
delay in opening a file with SET DELETED ON and a lot of deleted record
at the beginning (for 10000 record, the delay was 9-15 seconds).
What misleaded me was the fast behavior of the CGI. So I implicitly
excluded issues due to the language/data structure itself. True, it runs
on Linux, but it's the same (x)Harbour for both programs. And SET
DELETED ON is executed by the CGI, too.
As Klas Engwall pointed out with sublety, this difference could show
that the SMB protocol is not really so efficient.
But we must consider that The CGI has local access to the files, and
they reside on a native Linux filesystem, so the access is way more
efficient.
Anyway It seems that others have more serious problems about slow .dbf
access.
It could be interesting to follow the evolution of those cases.
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/21/2010 9:19:30 AM
|
|
Hello,
>> So now I'll try to connect an 'ancient' client running w98 and execute the
>> program from it. If it's faster, it's definitely a client problem.
>> Stay tuned if you are interested in the testing!
>
> I'm really interesting!
Same here.
My customers can't even use my application with Windows Small Business
Server. Just WAY to slow.. :(
--
Patrick
|
|
0
|
|
|
|
Reply
|
Patrick
|
1/28/2010 10:06:37 AM
|
|
Patrick Mast ha scritto:
> Hello,
>
>>> So now I'll try to connect an 'ancient' client running w98 and
>>> execute the
>>> program from it. If it's faster, it's definitely a client problem.
>>> Stay tuned if you are interested in the testing!
>>
>> I'm really interesting!
>
> Same here.
>
> My customers can't even use my application with Windows Small Business
> Server. Just WAY to slow.. :(
>
ahem... it seems I have some stupid problem in connecting my old win98
box to the samba server (it can't authenticate), so I reconfigured the
network to use another PC with Win XP.
I posted the results, IIRC. Seeking...
Found!
From my previous post:
Environment:
Server Linux (Zenwalk), kernel 2.6.25.4, Samba is 3.2.3
A small standard network with a couple of switch 100 Mb/sec
PC 1, Celeron 1.4 Ghz with XP Home SP3, 384 Mb RAM - runs Avast
antivirus (if it matters)
PC 2, Athlon 64 3500+, 2Gb RAM, XP Professional SP2 (not updated) - runs
Avast too and a bunch of resident programs (Daemon tools, Messenger
etc.) To test Wine it runs Slackware 12.
PC 3, an old K6/500 running Windows 98 (Yes, I know... no comment
please...) no antivirus at all.
PC 4: a Duron 1.1 Ghz with 512 Mb RAM, running Linux Zenwalk or Windows
XP Professional SP2, always as a server.
>
> What is the status of "opportunistic locking"? (Note that this should
> have no effect on opening a file, but on moving about in it.)
>
> David A. Smith
I didn't (still) touch any parameter in the win registry, nor set any
dbflockscheme. All plain vanilla.
Method of testing:
I did not put up a test program, rather added the following code to my
existing application:
// put up a flag
log_op:=.t.
Added the following before and after file operations:
if log_op
reglog(<cmessage>)
endif
function reglog is:
function reglog(ctxt)
local curf:=select()
public hlf:=0
if .not. file ("logfile.dbf")
dbcreate("logfile",{{"data","D",10,0},{"ora","C",8,0},{"user","N",2,0},{"oper","C",60,0},{"secondi","N",8,2},{"diff","N",8,2}})
endif
if hlf=0
hlf=sga("logfile") // means more or less dbusearea, returns area
number (select())
else
select(hlf)
if lower(alias())!="logfile"
hlf=sga("logfile")
reglog("Reopen logfile")
endif
endif
pvsec=secondi
cursec=seconds()
append blank
replace data with date()
replace ora with time()
replace user with nodeid
replace oper with ctxt
replace secondi with cursec
replace diff with cursec-pvsec
select(curf)
return nil
This function creates "logfile" and keeps it opened, then adds a record
with the timings.
The application is compiled with xHarbour latest cvs and WVW. RDD is
CDX. All files are opened in shared mode.
Files are varying in size from very small to 2 Mb. Real application
(test will follow as soon as I'll put my hands on the REAL environment)
has files about 40 Mb wide. And the problems.
Test 1
------
only one pc accesses data (pc 1) win->server Linux
open a small file 0,02
open a 165K file 4,19
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,04
opens 2 more files quite small: 0,06
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,06
Set relation to some files: 0,01/not measured (0,00)
Some other file opened: 0,11
The second PC does the same operations, while files are in use by the
first one (pc 2) win->server Linux
open a small file 0,01
open a 165K file 2,57
open a small file 0,02
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,06
opens 2 more files quite small: 0,08
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some file: 0,02
Some other files opened: 0,14
Note to test 1
--------------
Reverting the order, say the Celeron-powered enters as second, shows
that the more powerful the pc, the fastest the access. But we are
talking of tenth of seconds.
I've also not been able to access from the Win98 PC the share, after a
bit of tinkering I gave up. Dunno. Samba 3.xx maybe needs some
configuration to accord with such an ancient thing.
Now let's change the server, PC 4 acts now as a server under Windows XP
professional SP2 not upgraded.
Test 2
------
Pc 1 accesses data (WinXP->server WinXP)
open a small file 0,03
open a 165K file n.d.
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,08
opens 2 more files quite small: 0,10
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some files: 0,01
Some other files opened: 0,14
(pc 2) winXP->server WinXP
open a small file 0,03
open a 165K file 4,57
open a small file 0,01
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,09
opens 2 more files quite small: 0,11
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,11
Set relation to some file: 0,02
Some other file opened: 0,19
Pc3 (note: with a 10 Mb/sec network card) Win98->server WinXP
open a small file 0,00 (not measurable)
open a 165K file 4,78
open a small file 0,00 (not measurable)
open file 1,2 Mb + 2 indexes 64 Kb and 25 Kb: 0,06
opens 2 more files quite small: 0,11
open file 2 Mb, (with 386K .FPT) + 5 indexes: 0,16
Set relation to some file: 0,00 (not measurable)
Some other file opened: 0,22
And so on.
Conclusions:
In my network, everything seems to work smoothly, at least for 3 users.
I tried to start some other sessions from the XP clients with enough
resources, and I did not experienced significant lags. A note must be
given: the old Win98 machine, with an obsolete hardware and a network
card only able to 10 Mb/sec (but it is the legendary 3Com
double-buffering network card...) acts as new powerful machines. Gosh!
HTH
Dan
|
|
0
|
|
|
|
Reply
|
D
|
1/28/2010 1:23:47 PM
|
|
|
67 Replies
1288 Views
(page loaded in 0.414 seconds)
Similiar Articles: file opening slows down - puzzling - comp.lang.xharbourHi all, I have a problem that is really puzzling me and annoying my customers, and I am not sure even on what to investigate first. Any hint will ... MDB files compare - comp.soft-sys.sasBash: strip file path and file extension from a file name in a ... file opening slows down - puzzling - comp.lang.xharbour... comp.soft-sys.sas file opening slows down ... MCR detection on Windows XP - comp.soft-sys.matlabfile opening slows down - puzzling - comp.lang.xharbour... in Computing > Science (thesis was " On the Detection ... the server, PC 4 acts now as a server under Windows XP ... Virus risk in PDF files? - comp.text.pdffile opening slows down - puzzling - comp.lang.xharbour Too much risk of damaging the file. As I already said, I'm using ... And I do not insist everyone use the same virus ... MPICH2 : displaying appliction UI under win32 - comp.parallel.mpi ...file opening slows down - puzzling - comp.lang.xharbour... specifically with Clipper applications running under ... program differs only in the user interface ... to ... Difference between commit and flush in Hibernate - comp.lang.java ...file opening slows down - puzzling - comp.lang.xharbour... yes, but I feared, among the others, the old COMMIT ... I just tried such a cycle and not found great ... Control Center configuration with Btrieve files in a very very ...file opening slows down - puzzling - comp.lang.xharbour > but the opening of the files has become very slow for ... puzzling - comp.lang.xharbour Control Center ... Setting MTU to a lower value ... what other impact ? - comp.unix ...file opening slows down - puzzling - comp.lang.xharbour Other indexes are not conditional and allow for a full ... search the web and the MS knowledgebase for each setting. ... looking for full text editor control/widget for OpenGL - comp ...file opening slows down - puzzling - comp.lang.xharbour... indexes are not conditional and allow for a full search and edit. ... handfull of users (or users that are ... delelte dirs older than 2 hours by find with solaris 9 - comp.unix ...file opening slows down - puzzling - comp.lang.xharbour SQL is much older than DBFCDX. EMG -- EMAG Software ... of Vista for "discrete file operations" (copy, delete ... corrupted notebook - comp.soft-sys.math.mathematicafile opening slows down - puzzling - comp.lang.xharbour It's generally discouraged as it can cause data corruption... But we really need to ... hard disk and remote hard ... PDF files considered Unsafe by MS - comp.text.pdffile opening slows down - puzzling - comp.lang.xharbour > > Yes, but that is considered an advantage from the ... Method at Regular Intervals - comp.os.ms ... file opening ... Reliability of file locks on share between Windows and Solaris ...file opening slows down - puzzling - comp.lang.xharbour... Novell (version 6) - primarily just file sharing, now ... quite the same function in the example file 'Locks ... Reports, very slow to open - comp.databases.ms-accessfile opening slows down - puzzling - comp.lang.xharbour... but the opening of the files has become very slow for the ... The app waits some 10-15 seconds to open the ... HP48G+ to windows xp - comp.sys.hp48confirm trusted context from remote reporting server - comp ... file opening slows down - puzzling - comp.lang.xharbour If you can confirm that the problem is the new ... file opening slows down - puzzling - comp.lang.xharbour | Computer ...Hi all, I have a problem that is really puzzling me and annoying my customers, and I am not sure even on what to investigate first. Any hint will ... Slow Response, Memory Problems, and Speeding up ExcelTemporary files can make it impossible to open a file (file already open), or impossible to rename a file, or can simply slow things down. delete everything from the ... 7/20/2012 4:40:08 AM
|