Oracle mechanics

14.11.2015

Патч 20476175 для версий до 12.1.0.2.5

Filed under: Oracle — Игорь Усольцев @ 00:09
Tags: ,

В предыдущей заметке фактически продублировал описание известного Bug 20476175 High VERSION_COUNT (in V$SQLAREA) for query with OPT_PARAM(‘_fix_control’) hint

Баг этот, кроме случая использования подсказок OPT_PARAM(‘_fix_control’) непосредственно в теле запроса, обладает ещё одной неприятной особенностью — он «работает» также в случае применения этих подсказок через SQL Patch (и, подозреваю, через SQL Profile)

Например, если для простого запроса select count(*) from emp (SQL_ID=g59vz2u4cu404) сотворить простой SQL Patch:

SQL> @sqlpatch+
&SQL_ID: g59vz2u4cu404
&SQL_PATCH_TEXT: OPT_PARAM(''_fix_control'' ''4887636:1'')
&SQL_PATCH_NAME: TEST_PATCH
 
PL/SQL procedure successfully completed
 
SQL_ID        NAME       CATEGORY CREATED               STATUS   FMATCH
------------- ---------- -------- --------------------- -------- ------
g59vz2u4cu404 TEST_PATCH DEFAULT  13.11.2015 23:21:45   ENABLED  NO
 
SQL_PATCH_HINTS
-------------------------------------
OPT_PARAM('_fix_control' '4887636:1')

и выполнить запрос несколько раз:

12.1.0.2.SCOTT@/ORCL1201 SQL> select count(*) from emp;

  COUNT(*)
----------
        12

SQL> select * from table(dbms_xplan.display_cursor());

PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  g59vz2u4cu404, child number 1
-------------------------------------
...
Plan hash value: 2937609675
...

Note
-----
   - SQL patch "TEST_PATCH" used for this statement


SQL> select count(*) from emp;

  COUNT(*)
----------
        12

SQL> select count(*) from emp;

  COUNT(*)
----------
        12

SQL> select * from table(dbms_xplan.display_cursor());

PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  g59vz2u4cu404, child number 3
-------------------------------------
...
Plan hash value: 2937609675
...

— каждое последующее выполнение будет добавлять дочерний курсор

А ввиду оперативной полезности OPT_PARAM(‘_fix_control’) патч 20476175 либо PSU 12.1.0.2.5 ставить надо

UPD Проблема не зависит от номера используемого в тестовой подсказке фикса

Добавить комментарий »

Комментариев нет.

RSS feed for comments on this post. TrackBack URI

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

Создайте бесплатный сайт или блог на WordPress.com.

%d такие блоггеры, как: