Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
Столкнулся с ситуацией, не пойму куда копать. Буду благодарен за пинок в правильную сторону.
SQL> desc confchannelprocess
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                        NOT NULL VARCHAR2(255 CHAR)
 OCA                                       NOT NULL NUMBER(19)
 LASTMODIFIED                                       TIMESTAMP(6)
 CREATIONDATE                                       TIMESTAMP(6)
 CHANNELID                                 NOT NULL VARCHAR2(255 CHAR)
 UNIQUENAME                                NOT NULL VARCHAR2(255 CHAR)
 PARENTID                                           VARCHAR2(255 CHAR)
 HIDE                                      NOT NULL NUMBER(1)
 VALUEORDER                                         NUMBER(10)

SQL> col id format a40
SQL> col parentid format a20
SQL> set null NIL
SQL> ed
Wrote file afiedt.buf

  1  select id,
  2      this_.hide ,parentid
  3        from ConfChannelProcess this_
  4*   where this_.parentId='ahgf'
SQL> /

ID                                             HIDE PARENTID
---------------------------------------- ---------- --------------------
8a80828f-355bf7b3-0135-5bf98530-04e9     NIL        NIL
8a80828f-32d81f97-0132-d82124a4-005d     NIL        NIL
8a80828f-355bf42f-0135-5bf5edce-013d     NIL        NIL

SQL> ed
Wrote file afiedt.buf

  1  select id,
  2  --    this_.hide ,
  3  parentid
  4        from ConfChannelProcess this_
  5*   where this_.parentId='ahgf'
SQL> /

no rows selected

SQL> create index tmp_idx on confchannelprocess (parentid);

Index created.
SQL> ed
Wrote file afiedt.buf

  1  select id,
  2      this_.hide ,
  3  parentid
  4        from ConfChannelProcess this_
  5*   where this_.parentId='ahgf'
SQL> /

no rows selected

SQL> drop index tmp_idx;

Index dropped.

SQL> ed
Wrote file afiedt.buf

  1  select id,
  2      this_.hide ,
  3  parentid
  4        from ConfChannelProcess this_
  5*   where this_.parentId='ahgf'
SQL> /


ID                                             HIDE PARENTID
---------------------------------------- ---------- --------------------
8a80828f-355bf7b3-0135-5bf98530-04e9     NIL        NIL
8a80828f-32d81f97-0132-d82124a4-005d     NIL        NIL
8a80828f-355bf42f-0135-5bf5edce-013d     NIL        NIL

В соответствующих записях парентид is null. Эти записи лежат в разных блоках. Вместо ahgf можно подставить любое значение - эти три записи попадут в выборку.
SQL> ed
Wrote file afiedt.buf

  1  select id,
  2      this_.hide ,
  3  parentid
  4        from ConfChannelProcess this_
  5*   where this_.parentId='8a808290-38bedd5f-0138-c1a6db67-04f1'
SQL> /

ID                                             HIDE PARENTID
---------------------------------------- ---------- --------------------
8a80828f-355bf7b3-0135-5bf98530-04e9     NIL        NIL
8a80828f-32d81f97-0132-d82124a4-005d     NIL        NIL
8a80828f-355bf42f-0135-5bf5edce-013d     NIL        NIL
8a808290-38bedd5f-0138-c1b1f648-193d              0 8a808290-38bedd5f-01
                                                    38-c1a6db67-04f1

Но только если колонка hide есть в седект-листе:
SQL> ed
Wrote file afiedt.buf

  1  select id,
  2  parentid
  3        from ConfChannelProcess this_
  4*   where this_.parentId='8a808290-38bedd5f-0138-c1a6db67-04f1'
SQL> /

ID                                       PARENTID
---------------------------------------- --------------------
8a808290-38bedd5f-0138-c1b1f648-193d     8a808290-38bedd5f-01
                                         38-c1a6db67-04f1
5 окт 12, 14:21    [13274126]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
Павел Воронцов,

одноименного синонима на какую-нибудь вьюху нет? говорите про FTS, а где планы-то?
5 окт 12, 14:31    [13274216]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
xtender
Павел Воронцов,

одноименного синонима на какую-нибудь вьюху нет? говорите про FTS, а где планы-то?
нет, ни синонимов, ничего. Виноват, вот план:
----------------------------------------------------------------------------------------
| Id  | Operation         | Name               | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |                    |     1 |    74 |    97   (0)| 00:00:02 |
|*  1 |  TABLE ACCESS FULL| CONFCHANNELPROCESS |     1 |    74 |    97   (0)| 00:00:02 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - filter("THIS_"."PARENTID"='8a808290-38bedd5f-0138-c1a6db67-04f1')
Он не отлчается если включить проблемную колонку в селект-лист. Если создан индекс, то
--------------------------------------------------------------------------------------------------
| Id  | Operation                   | Name               | Rows  | Bytes | Cost (%CPU)| Time     |
--------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT            |                    |     1 |    74 |     2   (0)| 00:00:01 |
|   1 |  TABLE ACCESS BY INDEX ROWID| CONFCHANNELPROCESS |     1 |    74 |     2   (0)| 00:00:01 |
|*  2 |   INDEX RANGE SCAN          | TMP_IDX            |     1 |       |     1   (0)| 00:00:01 |
--------------------------------------------------------------------------------------------------
5 окт 12, 14:35    [13274244]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
Да!
SQL> select * from v$version
  2  /

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
PL/SQL Release 10.2.0.4.0 - Production
CORE    10.2.0.4.0      Production
TNS for Linux: Version 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production
5 окт 12, 14:43    [13274293]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
wurdu
Member

Откуда: Владивосток
Сообщений: 4441
Какая версия? Был похожий баг 7123643 в 10.2.0.4, . У нас проявлялся после update на сжатой таблице, когда строки мигрировали.
5 окт 12, 14:44    [13274300]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
wurdu,

я тоже на нее подумал, но тут не было никаких сжатий. Строки мигрированные как увидеть, прошу прощения за глупый вопрос?
5 окт 12, 14:50    [13274348]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
wurdu
Member

Откуда: Владивосток
Сообщений: 4441
Павел Воронцов
wurdu,

я тоже на нее подумал, но тут не было никаких сжатий. Строки мигрированные как увидеть, прошу прощения за глупый вопрос?
ANALYZE TABLE confchannelprocess LIST CHAINED ROWS. Правда там и chainded и migrated в куче будут.
5 окт 12, 15:02    [13274435]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
wurdu,

Нету, говорит. Протирка стекол и пинание шин (сбор статистики) не помогает.
5 окт 12, 15:08    [13274479]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
wurdu
Member

Откуда: Владивосток
Сообщений: 4441
Павел Воронцов
wurdu,

Нету, говорит. Протирка стекол и пинание шин (сбор статистики) не помогает.
А если create table as select, create index и воспроизвести?
5 окт 12, 15:11    [13274501]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
wurdu,

Наврал. Есть чейнед строки. Полез разбираться.
5 окт 12, 15:16    [13274535]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
wurdu
А если create table as select, create index и воспроизвести?
Не хочется зверушку убивать. База разработческая, хочется препарировать до конца.
5 окт 12, 15:17    [13274546]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
wurdu,

Хрена лысого. Убрал все чейнед строки, эффект тот же.
5 окт 12, 15:43    [13274795]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
dbms_photoshop
Member

Откуда: sqlmdx.net
Сообщений: 5151
Павел Воронцов,

RLS тоже нет?
5 окт 12, 16:12    [13275054]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
dbms_photoshop,

Нет. Не держим такого щастья.
5 окт 12, 16:14    [13275070]     Ответить | Цитировать Сообщить модератору
 Re: "Фантомные" записи при FTS + колонка  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2386
Блог
Накатили на базу

# 7496435 - 10.2.0.4 GENERIC RECOMMENDED BUNDLE# 2

проблема ушла. Неясно то ли от перезапуска, то ли от бундла. Мониторим дальше.

Не нравится мне все это. За выходные к трем фантомным записям добавилось еще две. С какого перепугу? В выходные к этой схеме никто не ходил. С этим инстансом уже второй случай подобного странного поведения, оба раза фигурирует нулловская колонка. Попробую сварганить какой-нибудь кейс - вдруг да получится? Хотя...
8 окт 12, 13:59    [13284356]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить