Note 1455168 - _FIX_CONTROL syntax

Summary
Symptom
Database problems have occurred due to incorrect syntax for the "_FIX_CONTROL" parameter.
Other terms
_FIX_CONTROL ,  v$system_fix_control, Oracle, ORA-940, "invalid ALTER command"
Reason and Prerequisites
Adhering to the correct syntax for the "_FIX_CONTROL" parameter is important for the Oracle database to work correctly.  In addition, only bugs may be referenced whose fixes are also implemented in the database.
Solution

Make sure that you adhere to the correct syntax for setting the "_FIX_CONTROL" parameter:
Correct syntax

If several values are to be set for "_FIX_CONTROL", you must use the following syntax (example):
  • init<SID>.ora:
           _fix_control='6660162:ON','6440977:ON',...
           OR
           in consecutive lines
           _fix_control = '6660162:ON'
_fix_control = '6440977:ON'
_fix_control=...
  • spfile<SID>.ora
           alter system set "_fix_control"='6660162:ON','6440977:ON',... scope= spfile;

Problem with incorrect values
      a) ORA-940
                       If incorrect values are set for "_FIX_CONTROL", an
                         ORA-00940: invalid ALTER command
                       may occur when you restart the database.
This is described in detail in Notes 1114704 and 1233458.
      b) No ORA-940
                       An ORA-940 does not occur in all cases where there is an incorrect value within the "_FIX_CONTROL" parameter. The parameter seems to be set correctly.
However, all values after this incorrect value may be ignored, and there may be a performance problem as a result.
This is described in detail in Note 1454675.

Problem with values in ""

When you use the following syntax:

alter system set "_fix_control"="'6660162:ON','6440977:ON',..." scope= spfile;
(the list of values is enclosed in "")

the following parameters may be processed incorrectly and the "_FIX_CONTROL" parameter may be displayed incorrectly.

If you set the "_FIX_CONTROL" parameter in the spfile, the system does not return any error message. When you restart the database, the system may not report an ORA-00940.

For example:
SQL> alter system set "_fix_control"="'6660162:ON','6440977:ON'" scope= spfile;

--> Restart the database

SQL> show parameter fix

NAME           TYPE        VALUE
-------------- ----------- ------------------------------
_fix_control   string      , 5705630:ON', 6440977:ON'
                          *._optim_peek_user_binds=FALSE
                          *._optimizer_better_inlist_cos
                          ting=, OFF'

Header Data
Release Status:Released for Customer
Released on:06.04.2010  12:58:48
Master Language:German
Priority:Recommendations/additional info
Category:Installation information
Primary Component:BC-DB-ORA Oracle
Secondary Components:BW-SYS-DB-ORA BW ORACLE
Affected Releases
Release-Independent
Related Notes
 
1454675 - _FIX_CONTROL parameters are ignored
 
1431798 - Oracle 11.2.0: Database Parameter Settings
 
1289199 - Information about Oracle parameters
 
1233458 - Error during startup: ORA-00940: invalid ALTER command
 
1114704 - ORA-940 after alter system "_FIX_CONTROL"=''

No comments: