Search notes:
Oracle: X$KSPPI
x$ksppi
can be joined to x$ksppcv
and x$ksppsv
:
select
par.ksppinm name,
par.ksppdesc description,
--
vin.ksppstvl val_instance,
vin.ksppstdvl val_instance_display,
vin.ksppstdfl val_instance_default,
--
vse.ksppstvl val_session,
vse.ksppstdvl val_session_display,
vse.ksppstdfl val_session_default,
--
vin.ksppstdf is_default_instance,
vin.ksppstvf val_instance_display,
vin.ksppstcmnt update_comment_instance,
--
decode(bitand(par.ksppiflg/ 256,1), 1, 'yes','no') is_session_modifiable,
decode(bitand(par.ksppiflg/65536,3), 1, 'immediate',
2, 'deferred' ,
3, 'immediate',
'no') is_system_modifable,
--
vse.ksppstdf is_default_session,
vse.ksppstvf,
vse.ksppstcmnt update_comment_session,
--
par.ksppilrmflg,
par.ksppity,
par.ksppihash
from
x$ksppi par join
x$ksppcv vse on par.indx = vse.indx join
x$ksppsv vin on par.indx = vin.indx
where
par.ksppinm like '%spin%'
order by
lower(replace(par.ksppinm, '_', ''));
TODO
Joining X$KSPPI to X$KSPPCV
Apparently, x$ksppi
can be joined to x$ksppcv2
like so:
select
x.ksppinm name,
ksppdesc description,
y.kspftctxvl value,
y.kspftctxdf isdefault,
decode(bitand(y.kspftctxvf, 7), 1,'MODIFIED',4,'SYSTEM_MOD','FALSE') ismod, decode(bitand(y.kspftctxvf, 2), 2, 'TRUE', 'FALSE') isadj
from
sys.x$ksppi x,
sys.x$ksppcv2 y
where
x.inst_id = userenv('instance') and
y.inst_id = userenv('instance') and
x.indx + 1 = y.kspftctxpn
order by
name;
Namespace ksppar_const_ns
Executing oradebug dumpsga
writes (among other things) a section named Namespace ksppar_const_ns (KSP parameter collection) into the trace file.
The number of lines in this section equals the number of records in x$ksppi
.
Each line in this section has the form identifer = n
where n
is a number starting at 1 and increased by one for each line.
It seems that the line of this section corresponds to the record in x$ksppi
where indx
is n-1
.
See also
MOS Note 315631.1