powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Занятость ресурса
6 сообщений из 6, страница 1 из 1
Занятость ресурса
    #40000290
verter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть хр. процедура P_RECREATE_INDEXES, которая перестраивает индексы по таблице, вот так:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
  select count(*) into i from user_indexes where index_name = 'IND01_ORDERS';
  if i > 0 then
    sql_stmt := 'drop index IND01_ORDERS';
    EXECUTE IMMEDIATE sql_stmt;
  end if;  

  sql_stmt := '
    create index IND01_ORDERS on ORDERS (ORDER_TYPE_ID)
    tablespace USERS
    pctfree 10
    initrans 2
    maxtrans 255
    storage
    (
      initial 72K
      next 1M
      minextents 1
      maxextents unlimited
    )';
  EXECUTE IMMEDIATE sql_stmt;



Процедуру с этим кодом я периодически вызываю в джобе, но иногда почему то джоб ломается с вот такой вот ошибкой:

ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired
ORA-06512: at "P_RECREATE_INDEXES", line 128


При этом индекс удаляется, но не создаётся со всеми вытекающими последствиями.
т.е. ломается на попытке создания индекса.

Как перед созданием индекса поставить проверку на занятость ресурса?
И вообще по каким причинам такая ошибка может возникать? Что за занятость такая?
...
Рейтинг: 0 / 0
Занятость ресурса
    #40000296
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В поиск даже не ходили?
...
Рейтинг: 0 / 0
Занятость ресурса
    #40000298
serpv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тем более Вертеру даже и ходить не надо, можно просто у Алисы спросить.
...
Рейтинг: 0 / 0
Занятость ресурса
    #40000325
Synoptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alter session set ddl_lock_timeout = 10;
...
Рейтинг: 0 / 0
Занятость ресурса
    #40000331
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verter,

А вам точно нужен drop/create? Alter index rebuild не подойдёт?
...
Рейтинг: 0 / 0
Занятость ресурса
    #40000348
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
verter
У меня есть хр. процедура P_RECREATE_INDEXES, которая перестраивает индексы по таблице

интересно, а с какой целью это проделывается?
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Занятость ресурса
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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