TBLORIDXPARTNUM - anyone know this operator?
Date: Wed, 09 Dec 2009 09:22:00 +0000
I am trying to reproduce a problem most likely related to statistics gathering which happened this night. The alert for long running sessions fired after this statement crossed the threshold:
substrb(dump(MIN(val),16,0,32),1,120) minval, substrb(dump(MAX(val),16,0,32),1,120) maxval,
SUM(rep) sumrep, SUM(repsq) sumrepsq, MAX(rep) maxrep,
WHEN rep=1 THEN 1 ELSE 0
MIN(bkt) minbkt, MAX(bkt) maxbkt, COUNT(val) rep, COUNT(val)*COUNT(val) repsq FROM (SELECT /*+ no_parallel(t) no_parallel_index(t) dbms_stats cursor_sharing_exact use_weak_name_resl dynamic_sampling(0) no_monitoring */ dateCol val, ntile(254) over (order by dateCol) bkt FROM owner.table t WHERE TBLORIDXPARTNUM(owner.table,0,4,0,ROWID) = :objn AND dateCol IS NOT NULL )
GROUP BY val
GROUP BY maxbkt
ORDER BY maxbkt
Trying to execute this statement fails:
ERROR at line 27:
ORA-00904: "TBLORIDXPARTNUM": invalid identifier
Metalink/Google drew blanks for TBLORIDXPARTNUM, and it's not in dba_objects either. Tried to execute as sys and table owner but to the same result.
BTW the table is range partitioned on dateCol with an unpartitioned primary key and a couple of additional local indexes. Oracle 10.2.0.4.1 RAC on 64bit RHEL 5.3.
So the question is: does anyone know this operator and how to use it?
Any help appreciated.