× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 24-May-2016 08:35 -0500, CRPence wrote:
On 24-May-2016 07:27 -0500, Rob Berendt wrote:
Neither method <ed: create table from query of the UDTF and DSPFFD
nor query of SYSPARMS> leads to believe that the <ed: member text>
information is in there.

And my suggestion [for how] to use a scalar UDF was problematic in a
test; i.e. used in another lateral join of values-row-clause invoking
that UDF, instead of functioning as expected [i.e. producing expected
output] on v7r1, resulted in [even if I replace that UDF with the
built-in REPLACE scalar, for example]:

msgMCH3601 T/QQQVFMT TM/QQQVFMT TP/VFLDJREF STMT/34534
"Pointer not set for location referenced.
msgCPF4204 F/QQQQUERY FM/QQQQUERY FP/QQQQUERY stmt/33065 QDT1
"Internal failure occurred in query processor."
msgSQL0901 rcCPF4204 et3107 f/QSQXCUTE

The revised\failing invocation:

SELECT A.DBXLIB as SRCPF_LIBR
, A.DBXFIL as SRCPF_NAME
, B.SYSTEM_TABLE_MEMBER as SrcMbrName
, B.LAST_SOURCE_UPDATE_TIMESTAMP as SRCPF_UDAT
, B.SOURCE_TYPE as SRCPF_SRCTYPE
, b.CREATE_TIMESTAMP as Source_Create_Timestamp
, b.LAST_CHANGE_TIMESTAMP as Source_Type_Text_Change_Timestamp
, c."Mbr_Text" /* originally c.* and no naming of col in NTE */
FROM QSYS.QADBXATR A
, LATERAL
( SELECT * FROM TABLE
( QSYS2.PARTITION_STATISTICS(A.DBXLIB, A.DBXFIL) ) AS X
) AS B
, lateral
( values(replace(A.DBXLIB,A.DBXFIL,SYSTEM_TABLE_MEMBER))
) AS C ( "Mbr_Text" )
WHERE A.DBXlib = 'MYLIBR'
and A.DBXATR = 'PF'
and A.DBXREL = 'Y'
and A.DBXTYP = 'S'
AND B.SOURCE_TYPE IS NOT NULL


The error described above is a defect, apparently exposed per lack of a column identifier specified as qualifier. Having coded B.SYSTEM_TABLE_MEMBER as the second argument of the UDF instead of coding as shown above with SYSTEM_TABLE_MEMBER as the second argument, the invocation works perfectly; both for the coding of the [nonsensical; just use-something-other-than-my-UDF] REPLACE scalar built-in and for the coding of the alluded MBRTEXT scalar UDF.

Anyone interested in avoiding such an error, and\or helping others avoid such an error, feel free to submit your own re-create as a defect PMR; with the intention of publicly documenting the defect and the response from IBM about their intentions to address the issue [or not] and\or to obtain a preventive PTF.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.