powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Ошибка в IDS11.50.xC3:
9 сообщений из 9, страница 1 из 1
Ошибка в IDS11.50.xC3:
    #35919854
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глюк оптимизатора

В sqexplain.out видно, что фильтр "type_post >= 3" никак не задействован....

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
QUERY: (OPTIMIZATION TIMESTAMP:  04 - 08 - 2009   11 : 50 : 59 )        (FIRST_ROWS OPTIMIZATION)

------
SELECT {+ EXPLAIN }
    id_account_db
  , id_account_kr
  , SUM(NVL(db_sum_nat, 0 )) AS td_nat
  , SUM(NVL(kr_sum_nat, 0 )) AS tk_nat
  FROM sm_posting
    WHERE (type_post >=  3 )
      AND (post_date BETWEEN MDY( 3 ,  1 ,  2009 ) AND MDY( 3 ,  31 ,  2009 ))
      AND (
           (id_account_db =  93421 )
        OR
           (id_account_kr =  93421 )
      )
  GROUP BY
    id_account_db, id_account_kr

DIRECTIVES FOLLOWED:
EXPLAIN

Estimated Cost:  184 
Estimated # of Rows Returned:  24 
Temporary Files Required For: Group By

   1 ) informix.sm_posting: INDEX PATH

    ( 1 ) Index Keys: id_account_db post_date   (Key-First)  (Serial, fragments: ALL)
        Lower Index Filter: (informix.sm_posting.id_account_db =  93421  AND informix.sm_posting.post_date >=  01 . 03 . 2009  )
        Upper Index Filter: informix.sm_posting.post_date <=  31 . 03 . 2009 
        Index Key Filters:  (informix.sm_posting.post_date <=  31 . 03 . 2009  )

    ( 2 ) Index Keys: id_account_kr post_date   (Key-First)  (Serial, fragments: ALL)
        Lower Index Filter: (informix.sm_posting.id_account_kr =  93421  AND informix.sm_posting.post_date >=  01 . 03 . 2009  )
        Upper Index Filter: informix.sm_posting.post_date <=  31 . 03 . 2009 
        Index Key Filters:  (informix.sm_posting.post_date <=  31 . 03 . 2009  )

Query statistics:
-----------------

  Table map :
  ----------------------------
  Internal name     Table name
  ----------------------------
  t1                sm_posting

  type     table  rows_prod  est_rows  rows_scan  time       est_cost
  -------------------------------------------------------------------
  scan     t1      306          113         306          00 : 00 . 00     185 

  type     rows_prod  est_rows  rows_cons  time
  -------------------------------------------------
  group     5            24          306          00 : 00 . 00 

При изменении текста where с внесением "type_post >= 3" внутрь OR и для id_account_kr и для id_account_db - исправляет ситуацию...

P.S:
Воссоздать "в тепличных условиях" не получается (т.е. небольшой тестовый пример, который бы воспроизвёл ситуацию).

Используем для тестирования:
Informix IDS Dynamic Server Developer Edition 11.5 for Linux (x86) RHEL 4, 64bit Version 1150FC3DE
Informix IDS Dynamic Server Enterprise Edition - TimeLimited 11.5 for Linux (x86) RHEL 4, 64bit Version 1150FC3TL

Кто-бы PMR оформил? :)
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35920913
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Проблема не воспроизводилась при некотором расширением диапазона фильтрации по дате
2. Перестала воспроизводиться и на "волнующих запросах" после UPDATE STATISTICS HIGH FOR TABLE sm_posting... Странно, всегда думал, что UPDATE STATISTICS должен влиять только на производительность запроса, но никак на корректность плана....
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35921460
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АнатоЛой1. Проблема не воспроизводилась при некотором расширением диапазона фильтрации по дате
2. Перестала воспроизводиться и на "волнующих запросах" после UPDATE STATISTICS HIGH FOR TABLE sm_posting... Странно, всегда думал, что UPDATE STATISTICS должен влиять только на производительность запроса, но никак на корректность плана....

Интересно, как производительность запроса может измениться без изменения плана...
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35922353
svat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВыбегаллоИнтересно, как производительность запроса может измениться без изменения плана...
Интересно, как план может измениться без изменения статистики... Ж8-)
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35922374
DrGonzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо имеется в виду, что UPDATE STATISTICS должен влиять на выбор наиболее эффктивного плана выполнения запроса, не влияя на результат.
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35922884
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВыбегаллоИнтересно, как производительность запроса может измениться без изменения плана...
Под "производительностью запроса" что подразумевается ?
- реальное время выполнения запроса
- условные "попугаи" в плане
- что то другое...
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35923111
svat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Unknownsvat2Выбегалло
Интересно, как производительность запроса может измениться без изменения плана...
Интересно, как план может измениться без изменения статистики... Ж8-)
Например, с помощью директив :)

тогда для полноты картины еще давайте и изменение версии IDS учитывать в ряду причин :)
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35923671
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВыбегаллоАнатоЛой1. Проблема не воспроизводилась при некотором расширением диапазона фильтрации по дате
2. Перестала воспроизводиться и на "волнующих запросах" после UPDATE STATISTICS HIGH FOR TABLE sm_posting... Странно, всегда думал, что UPDATE STATISTICS должен влиять только на производительность запроса, но никак на корректность плана....

Интересно, как производительность запроса может измениться без изменения плана...

Повторюсь, если не осознали "степень/важность/глубину"...

"В sqexplain.out видно, что фильтр "type_post >= 3" никак не задействован...."

Тот факт, что type_post никак не фигурирует в плане запроса, на практике выглядел как
"условие type_post >= 3 вообще не проверяется при выполнении выборки"

То есть проблема была не в производительности плана, а в некорректности работы запроса.
После выполнения запроса в отобранные данные попали строки с type_post = 1, что никак не соответствует фильтру.
Вооооооот.
И после эмпирического UPDATE STAT проблема пропала...
Отчего неприятный осадок в душе ещё больше сгустился...
...
Рейтинг: 0 / 0
Ошибка в IDS11.50.xC3:
    #35923712
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АнатоЛойВыбегаллоАнатоЛой1. Проблема не воспроизводилась при некотором расширением диапазона фильтрации по дате
2. Перестала воспроизводиться и на "волнующих запросах" после UPDATE STATISTICS HIGH FOR TABLE sm_posting... Странно, всегда думал, что UPDATE STATISTICS должен влиять только на производительность запроса, но никак на корректность плана....

Интересно, как производительность запроса может измениться без изменения плана...

Повторюсь, если не осознали "степень/важность/глубину"...

"В sqexplain.out видно, что фильтр "type_post >= 3" никак не задействован...."

Тот факт, что type_post никак не фигурирует в плане запроса, на практике выглядел как
"условие type_post >= 3 вообще не проверяется при выполнении выборки"

То есть проблема была не в производительности плана, а в некорректности работы запроса.
После выполнения запроса в отобранные данные попали строки с type_post = 1, что никак не соответствует фильтру.
Вооооооот.
И после эмпирического UPDATE STAT проблема пропала...
Отчего неприятный осадок в душе ещё больше сгустился...

баг.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Ошибка в IDS11.50.xC3:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]