IIRC, there was an issue that UDFs were called for every record independent
whether they were generated with DETERMINISTIC or NOT DETERMINISTIC.
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im
Auftrag von Tom E Stieger
Gesendet: Thursday, 28.2 2013 18:29
An: RPG programming on the IBM i (AS/400 and iSeries)
Betreff: RE: More, Re: Questions about RPG service program as an SQL UDF
I would suggest trying it in iNav if you can. I had a similar event happen
with some bad logic in an SQL view that would run the first time in
JasperReports over JDBC fine, but then subsequent times would use tons of
CPU appearing to try to optimize (based on looking at the job call stack).
For the longest time I thought it was a JasperReports problem, because I
couldn't reliably duplicate it in iNav. Then I realized it never happened
on the first call, but only on the second requests even in iNav.
Also I believe iNav and BIRT will both be using a JDBC connection so you
should be able to get similar results.
-Tom Stieger
IT Manager
California Fine Wire
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of James H. H. Lampert
Sent: Thursday, February 28, 2013 8:39 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: Re: More, Re: Questions about RPG service program as an SQL UDF
On 2/27/13 5:57 PM, Vernon Hamberg wrote:
I suspect that, just as it is when using a function in a WHERE clause,
that this often causes a full table scan, esp. when it is something
like
function(column) = value
The bizarre and unexplained issue is that the censorship function adds only
a modest 11 seconds to the response time when I benchmark it by counting the
rows in the view (which would have to call the censorship function for every
single record), yet it adds at least 15 minutes to the response time when a
BIRT report is run. Yet when I added diagnostic code, to log the
initialization of the censorship function and each record passed to it,
running the BIRT report logged exactly one trip through the entire file, and
four additional calls to specific records.
And (based on my recollections of a class I took in Rochester back in
2005) I was under the impression that Visual Explain required one to run the
query through iNav, or something connected to iNav. How would that help me
with BIRT?
--
JHHL
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.