Row security - F0911

Veiga

Member
Friends

We're having a lot of performance issues and Row Security is one of our main concerns.
We are trying to figure it out if it's better to base the row security of F0911 on the CO field or on the KCO field. The following options has the same functional results for us:
- CO = 07600
- KCO between '07600' and '07699' or KCO = '00000'

We're trying to analyze some statements generated by JDE when working with these two row security set ups but Oracle does not report much cost differences although we are pretty sure there are significant differences.

Here is the info provided by Oracle. Any advice will be greatly appreciated:

##########################################################
Row security by KCO:

SELECT *
FROM QADTA.F0911
WHERE ( GLPOST = 'P' AND ( GLFY = 5 AND GLCO = '07600' AND GLPN = 2 ) ) AND
( ( GLKCO BETWEEN '07600' AND '07699' OR GLKCO BETWEEN '00000' AND '00000' ) )
ORDER BY GLAID ASC,GLSBL ASC,GLSBLT ASC,GLLT ASC,GLCO ASC,GLMCU ASC,GLFY ASC,GLPN ASC

Description Owner Object Cost Bytes
SELECT STATEMENT, GOAL = CHOOSE 35505 1889922
SORT ORDER BY 35505 1889922
TABLE ACCESS BY INDEX ROWID QADTA F0911 35229 1889922
INDEX SKIP SCAN QADTA F0911_SK1 5115

Time to extract 25 lines --> 165 secs
Time to extract 442938 lines --> 2606 secs

Row security by CO:

SELECT *
FROM QADTA.F0911
WHERE GLCO = '07600' AND GLPN = 2 AND GLPOST = 'P' AND GLFY = 5 AND
GLCO BETWEEN '07600' AND '07600'
ORDER BY GLAID ASC,GLSBL ASC,GLSBLT ASC,GLLT ASC,GLCO ASC,GLMCU ASC,GLFY ASC,GLPN ASC

Description Owner Object Cost Bytes
SELECT STATEMENT, GOAL = CHOOSE 35505 1889922
SORT ORDER BY 35505 1889922
TABLE ACCESS BY INDEX ROWID QADTA F0911 35229 1889922
INDEX SKIP SCAN QADTA F0911_SK1 5115

Time to extract 25 lines --> 174 secs
Time to extract 442938 lines --> 2802 secs


Thank You!!!
 
CO is present at more indexes than KCO and is also the first column for one of these indexes.

KCO belongs to the primary key, is that an important factor ?
 
Back
Top