On both our 10.2.0.2 and 10.2.0.4 RAC (RH Linux), cursor_sharing is shown as force in gv$parameter but exact in gv$spparameter for all instances. dba_hist_parameter only has the value exact. Even though the value force exists in gv$parameter, isdefault is TRUE. But ismodified is MODIFIED (isadjusted is FALSE), while alert.log since DB creation on all nodes show no "alter system" command to change this parameter. We don't have this problem in our 10.2.0.3 RAC database. There's nothing really different between the 10.2.0.3 and these two databases in setup.
Sessions also take this value, most of the time!. I login as sys, system, or a regular user and type "show parameter cursor_sharing" and it shows force. Then I just did
SQL> alter system set cursor_sharing = exact scope = both sid = '*';
System altered.
SQL> create pfile='/tmp/junk2' from spfile;
File created.
The created pfile shows:
$ grep -i cursor_sharing /tmp/junk2
*.cursor_sharing='EXACT'
I logged in again. "Show parameter" and v$parameter still show force, even after flushing shared_pool. I bounced this instance. gv$parameter still shows force for all instances but "show parameter" in this bounced instance shows exact now!
EM (Enterprise Manager) has the Initialization Parameter History page. Since dba_hist_parameter never has the value force, I think EM (dbsnmp) simply logs in and gets its own session parameter and records it.
Anybody else had this problem with this parameter changing on its own? What's your value in gv$parameter, gv$spparameter, and "show parameter cursor_sharing"? If you use EM, does the history page show different values?
Yong Huang
|