If the intent is to page data into storage, and to note when exceptions occur (Chain failure - Not Found), then Chain HAS to be faster overall than SETLL, then an IF to determine existence status, then another I/O to page data in...
Traditional usage of CHAIN still requires an IF expression to test the results of the operation. This logical test is minimal, but it must be evaluated EVERY TIME the I/O is performed. Perhaps putting the CHAIN into a Monitor block, then defining an on-error handler for the exception might yield the best performance, since the exception status does not need to be evaluated on each I/O iteration.
But, really, I'd code it to its simplest form, that most clearly expresses my intent. Again, I think, CHAIN is the clear winner.
-Eric DeLong
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Briggs, Trevor (TBriggs2)
Sent: Monday, October 14, 2013 12:47 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: RE: CHAIN vs SETLL/READE
My first reaction is that a CHAIN would be faster than a SETLL and READE
to retrieve a single random record. However, this is assuming that your
reads have to be random and what percentage of the records you'll be
reading from the file. If you are going to be reading the majority of
records from a multi-million record file, re-jigging your logic so that
you could read the file sequentially (if even you ignore some of the
records in your code) could be advantageous.
Trevor Briggs
Analyst/Programmer
Lincare, Inc.
(727) 431-1246
TBriggs2@xxxxxxxxxxx
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Vinay Gavankar
Sent: Monday, October 14, 2013 12:44 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: CHAIN vs SETLL/READE
Hi,
I know this has probably been hashed a lot of times, but which of this
is
more efficient?
Doing a direct Chain or a SETLL and if %EQUAL doing a READE
I am accessing on a full unique key, but performing this millions of
times
in a batch program.
Most of the times the record WILL be found.
Thanks
Vinay
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.