Очень медленно загружается представление ...
На страницу Пред. 1, 2
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Random Эксперт
Вступление в Клуб: 27.06.2011
|
Ср Мар 19, 2014 14:27   |
|
Полезность: Нет оценки
|
Sant пишет: | Random пишет: |
Видимо, для того, чтобы не создавался foreign key и не мешался. Возможно, в этом поле не только числовые идентификаторы хранятся.
Мало ли для чего разработчик задумал это поле.
Что вас смущает, я не пойму?
|
Думаю нашу проблему бы решил простой добавлении индекса, но меня не понятно почему разработчики не добавили индекс в ранних версиях, в потом добавили скорее все это их ошибка. |
Про то, что индекса у вас нет, я не подумал - в это время вы ещё план не показали.
То, что время не изменилось после изменения условия - это потому, что был более глобальный тормоз. Попробуйте поиграть с представлением после того, как поставите индекс.
Что касается ошибки разработчиков - для вас 5-летней давности индекс - это поздняя версия? Вы мне делаете смешно. Я не уверен, что вина в том, что у вас нет 5-летней давности индекса, лежит на разработчиках. |
|
 |
Sant Участник со стажем
Вступление в Клуб: 19.08.2013
|
Ср Мар 19, 2014 15:06   |
|
Полезность: Нет оценки
|
Random пишет: |
То, что время не изменилось после изменения условия - это потому, что был более глобальный тормоз. Попробуйте поиграть с представлением после того, как поставите индекс.
|
Random, спасибо за прояснения. |
|
 |
devor Профи
Вступление в Клуб: 13.02.2012
|
Чт Мар 20, 2014 04:53   |
|
Полезность: Нет оценки
|
Sant пишет: |
Random пишет: |
План, конечно, безобразный. Как сказал Alexsey, нужен индекс по полю C_PROD_FOLD.
Есть дистрибутивный индекс IDX FOLDER_PAY IDX_Z#FOLDER_PAY_PROD, заведён с версии 8.7. Если у вас в метаданных он есть, а на схеме нет, обратитесь к вашим ДБА, а если нет и в метаданных, то к службе поддержки ЦФТ.
|
Нет, в метаданных не нашли, попробуем написать в службу поддержки ЦФТ.
|
Думаю, на этом обсуждение можно закрывать. Там очевидно должен быть индекс. Возможно, по какой-то причине он у вас выпал при накате патча. |
|
 |
Sant Участник со стажем
Вступление в Клуб: 19.08.2013
|
Пт Мар 28, 2014 15:10   |
|
Полезность: Нет оценки
|
Спасибо всем за участия.
После создания индекса проблема исправилась.
Код: |
select * from IBS.Z#FOLDER_PAY
create index IBS.Z#IX_Z#FOLDER_PAY_COL6 on IBS.Z#FOLDER_PAY (C_PROD_FOLD)
tablespace I_USR
pctfree 20
initrans 11
maxtrans 255
storage
(
initial 128K
next 128K
minextents 1
maxextents unlimited
);
|
Код: |
SQL> explain plan for
2
2 select (select case
3 when count(1) > 0 then
4 '***'
5 else
6 '...'
7 end
8 from ibs.z#folder_pay fp
9 where fp.c_prod_fold = to_char(a1_1.id)
10 and rownum < 2) papka,a1_1.*
11 from ibs.z#pr_cred a1_1;
Explained
SQL> select * from table(DBMS_XPLAN.DISPLAY);
PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------
Plan hash value: 3164875981
--------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU
--------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 68481 | 19M| 899 (2
| 1 | SORT AGGREGATE | | 1 | 9 |
|* 2 | COUNT STOPKEY | | | |
|* 3 | INDEX RANGE SCAN| Z#IX_Z#FOLDER_PAY_COL6 | 8 | 72 | 1 (0
| 4 | TABLE ACCESS FULL | Z#PR_CRED | 68481 | 19M| 899 (2
--------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
2 - filter(ROWNUM<2)
3 - access("FP"."C_PROD_FOLD"=TO_CHAR(:B1))
17 rows selected
|
|
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|