Forum Stats

  • 3,758,122 Users
  • 2,251,336 Discussions
  • 7,870,040 Comments

Discussions

_FIX_CONTROL Parameter

685316
685316 Member Posts: 3
edited Apr 22, 2009 5:01AM in General Database Discussions
Hi,

Someone knows what is the use the FIXCONTROL parameter? is this parameter automatically updated with Oracle Updates? should be changed manually?

Thanks in advance.

Best Answer

  • 678145
    678145 Member Posts: 1,624
    Accepted Answer
    FIXCONTROL is a special hidden parameter introduced in 10.2.0.2 which can be used to enable or disable certain bug fixes.
    It is not updated with bugfixes, You are setting it manually in order to enable or disable certain bugfixes with
    FIXCONTROL='bug_number:ON|OFF'

    It should be used only if You read that in metalink note.

    Look at metalink note 567171.1 for more details

Answers

  • 678145
    678145 Member Posts: 1,624
    Accepted Answer
    FIXCONTROL is a special hidden parameter introduced in 10.2.0.2 which can be used to enable or disable certain bug fixes.
    It is not updated with bugfixes, You are setting it manually in order to enable or disable certain bugfixes with
    FIXCONTROL='bug_number:ON|OFF'

    It should be used only if You read that in metalink note.

    Look at metalink note 567171.1 for more details
  • Oracle has introduced a fix control mechanism in 10.2 which allows customers to turn off fixes for optimizer related bugs. This is governed by the underscore parameter fixcontrol. The bugs for which fixes can be turned off are listed in v$session_fix_control and v$system_fix_control and can also be seen in a 10053 output.

    On a 10.2.0.2 database

    SQL> select distinct bugno from v$session_fix_control;

    BUGNO
    ----------
    3499674
    4556762
    4569940
    3118776
    4519016
    4175830
    4663698
    4631959
    4550003
    4584065
    4487253
    4611850
    4663804
    4602374
    4728348
    4723244
    4554846
    4545833
    4488689
    4519340

    20 rows selected.

    SQL> select distinct sid from v$mystat;

    SID
    ----------
    143

    SQL> alter session set "_fix_control"='4728348:OFF';

    Session altered.

    SQL> select * from v$session_fix_control where session_id=143 and bugno=4728348;

    SESSION_ID BUGNO VALUE DESCRIPTION OPTIMIZER_FEATURE_ENABLE EVENT IS_DEFAULT
    ---------- ---------- ---------- ---------------------------------------------------------------- --
    143 4728348 0 consider mjc if equi-joined pred is dropped in kkoipt 10.2.0.2

    A value of 0 indicates the fix is off.

    SQL> alter session set "_fix_control"='4728348:ON';

    Session altered.

    SQL> select * from v$session_fix_control where session_id=143 and bugno=4728348;

    SESSION_ID BUGNO VALUE DESCRIPTION OPTIMIZER_FEATURE_ENABLE EVENT IS_DEFAULT
    ---------- ---------- ---------- ---------------------------------------------------------------- --
    143 4728348 1 consider mjc if equi-joined pred is dropped in kkoipt 10.2.0.2

    It appears to me that if you need two fixes off in a session you have to specify them together else you lose the first change.

    SQL> alter session set "_fix_control"='4728348:OFF';

    Session altered.

    SQL> alter session set "_fix_control"='4663698:OFF';

    Session altered.

    SQL> select * from v$session_fix_control where session_id=143 and bugno in (4728348,4663698);

    SESSION_ID BUGNO VALUE DESCRIPTION OPTIMIZER_FEATURE_ENABLE EVENT IS_DEFAULT
    ---------- ---------- ---------- ---------------------------------------------------------------- --
    143 4663698 0 for cached NL table set tab_cost_io to zero 10.2.0.2 0 0
    143 4728348 1 consider mjc if equi-joined pred is dropped in kkoipt 10.2.0.2

    Hence if you need more than one fix OFF you need to supply both bug numbers in the same command

    SQL> alter session set "_fix_control"='4728348:OFF','4663698:OFF';

    Session altered.

    SQL> select * from v$session_fix_control where session_id=143 and bugno in (4728348,4663698);

    SESSION_ID BUGNO VALUE DESCRIPTION OPTIMIZER_FEATURE_ENABLE EVENT IS_DEFAULT
    ---------- ---------- ---------- ---------------------------------------------------------------- --
    143 4663698 0 for cached NL table set tab_cost_io to zero 10.2.0.2 0 0
    143 4728348 0 consider mjc if equi-joined pred is dropped in kkoipt 10.2.0.2
    Mohammed Mehraj Hussain
This discussion has been closed.