Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Очень срочно!!! ORA-00060: deadlock detected while waiting for resource / 24 сообщений из 24, страница 1 из 1
22.03.2005, 17:52
    #32974424
delphi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Проблема:
Из одного приложения в разных потоках выполняютяся блоки SQL-инструкций.

Каждый из потоков не пересекается по PK, но постоянно возникает ошибка
ORA-00060: deadlock detected while waiting for resource

Причем через N-ый промежуток времени выполняется, но все же одновременное выполннние ствновится приосто не возможным!!
...
Рейтинг: 0 / 0
22.03.2005, 18:20
    #32974506
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Посмотрите, что в трассировочном файле.
...
Рейтинг: 0 / 0
22.03.2005, 18:32
    #32974536
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Если увас не 10-ка, то

Том КайтКак свидетельствует опыт, основной причиной возникновения взаимных блокировок в базах данных Oracle являются неиндексированные внешние ключи. При изменении главной таблицы сервер Oracle полностью блокирует подчиненную таблицу в двух случаях:
• при изменении первичного ключа в главной таблице (что бывает крайне редко, если следовать принятому в реляционных базах данных правилу неизменности первичных ключей) подчиненная таблица блокируется при отсутствии индекса по внешнему ключу;
• при удалении строки в главной таблице подчиненная таблица также полностью блокируется (при отсутствии индекса по внешнему ключу).
...
Рейтинг: 0 / 0
22.03.2005, 18:37
    #32974550
delphi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
*** SESSION ID:(83.5031) 2005-03-22 13:05:54.410
DEADLOCK DETECTED
Current SQL statement for this session:
UPDATE wfil.account_ins SET ACCID=426700, ACC=2600, CURR=980, BS=2600, CL=70, LS=1, DATOPEN=to_date('30.09.2004 11:34:25','dd.mm.yyyy hh24:mi:ss'), DATP=to_date('22.03.2005','dd.mm.yyyy'), DATCLOSE =NULL, STATUS=0, NAME='...................', PSS =NULL WHERE mfo=1 AND ACCID =426700
----- PL/SQL Call Stack -----
object line object
handle number name
401a70d6a30 4 anonymous block
The following deadlock is not an ORACLE error. It is a
deadlock due to user error in the design of an application
or from issuing incorrect ad-hoc SQL. The following
information may aid in determining the deadlock:
Deadlock graph:
---------Blocker(s)-------- ---------Waiter(s)---------
Resource Name process session holds waits process session holds waits
TM-00006a51-00000000 49 83 SX SSX 33 39 SX SSX
TM-00006a51-00000000 33 39 SX SSX 49 83 SX SSX
session 83: DID 0001-0031-00000090 session 39: DID 0001-0021-00004CB1
session 39: DID 0001-0021-00004CB1 session 83: DID 0001-0031-00000090
Rows waited on:
Session 39: no row
Session 83: no row
Information on the OTHER waiting sessions:
Session 39:
pid=33 serial=39592 audsid=2570913 user: 834/REPMAN
O/S info: user: XXXXXX, term: GOZILLA, ospid: 3572:3004, machine: XXXXXXXXXX program: XXXXXXX.exe
application name: XXXXXXXX.exe, hash value=0
Current SQL Statement:

UPDATE wfil.account_ins SET ACCID=9481, ACC=2680014, CURR=980, BS=2635, CL=406980, LS=14, DATOPEN=to_date('18.05.2002 11:39:22','dd.mm.yyyy hh24:mi:ss'), DATP=to_date('22.03.2005','dd.mm.yyyy'), DATCLOSE =NULL, STATUS=0, NAME='...................', PSS=1 WHERE mfo=335719 AND ACCID =9481
End of information on OTHER waiting sessions.

PK(mfo, ACCID)
...
Рейтинг: 0 / 0
22.03.2005, 18:53
    #32974594
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Насколько я понял, вы модифицируете первичный ключ. А это чревато...
См. об этом, например, http://www.sql.ru/forum/actualthread.aspx?tid=169028 .
...
Рейтинг: 0 / 0
22.03.2005, 18:53
    #32974595
Markelenkov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Что заметно сразу - зачем

UPDATE wfil.account_ins SET ACCID=426700 ,...
WHERE mfo=1 AND ACCID =426700


UPDATE wfil.account_ins SET ACCID=9481 ,...
WHERE mfo=335719 AND ACCID =9481
...
Рейтинг: 0 / 0
22.03.2005, 18:55
    #32974606
Markelenkov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
2 Александр Соколов

Извините, что не в тему. Есть маленький вопрос. Видел, что Вы с Викором Сусойкиным переводили статью на тему сжатия таблиц в Oracle 9.2. Вы занимались каким-либо исследованием данного вопроса или просто сделали перевод?

Спасибо.
...
Рейтинг: 0 / 0
22.03.2005, 19:13
    #32974637
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
2 Markelenkov

На момент перевода у наших клиентов не было работающих полномасштабных систем под 9-ой. Виктор обещал попробовать смоделировать это и написать отдельную статью, но, видно, текучка заела... Если кто-нибудь сделает это, публикация в OM/RE гарантируется.
...
Рейтинг: 0 / 0
22.03.2005, 19:19
    #32974649
Guest555
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
авторЕсли кто-нибудь сделает это, публикация в OM/RE гарантируется
Сорри за оффтоп :-(
А каким образом можно публиковать статьи в OM?
...
Рейтинг: 0 / 0
22.03.2005, 19:24
    #32974664
Markelenkov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Спасибо, понятно.

Просто меня в свое время заинтересовала эта тема, я кое-что поисследовал в 9-ке:
/topic/103681&pg=2#797811

В алгоритме мне не все понравилось. Как я понял, в 10g что-то изменилось. Данной версией пока не располагаю, поэтому проверить не могу, хотя немалый практический интерес к этому имеется.

Можно взять мои идеи (в смысле, что можно тестировать) в качестве первого приближения для исследования. На авторство и статьи не претендую ;)

P.S. Привет Виктору, если он меня помнит.
...
Рейтинг: 0 / 0
22.03.2005, 19:41
    #32974697
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Guest555 А каким образом можно публиковать статьи в OM?
Просто шлите их гл. редактору Анатолию Бачину. Его адрес в журнале есть (или abachin@mail.ru).
...
Рейтинг: 0 / 0
22.03.2005, 20:13
    #32974743
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
MarkelenkovМожно взять мои идеи (в смысле, что можно тестировать) в качестве первого приближения для исследования. На авторство и статьи не претендую ;)
Спасибо. Еще бы найти, кто мог бы этим заняться. Мне кажется, часто модифицируемые таблицы можно даже не исследовать...
...
Рейтинг: 0 / 0
22.03.2005, 21:10
    #32974814
Ааз
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Александр Соколов...Александр Петрович, здравствуйте! Рад видеть гуру в нашем немного бестолковом стаде :-)

Андрей.
...
Рейтинг: 0 / 0
22.03.2005, 21:12
    #32974817
Markelenkov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Александр СоколовМне кажется, часто модифицируемые таблицы можно даже не исследовать...
Мне с практической точки зрения интересно поведение при модификациях (возможно частых) только части огромной сжатой несекционированной таблицы. Что касается небольших часто модифицируемых таблиц, то согласен.

Еще мне интересно поведение при вставке данных массивом (OCI array insert), в том числе, когда вставляемый одной командой insert массив выходит за рамки нескольких блоков, т.е. практически аналог direct path insert в части потока данных. В том числе интересно поведение при наличии LOBов (null и not null).

Интересует, конечно же, поведение в 10g, т.к. в 9-ке алгоритм я более-менее исследовал. Когда-нибудь я поизучаю все это, но писать статьи я не люблю :)
...
Рейтинг: 0 / 0
22.03.2005, 21:56
    #32974859
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
2 Ааз

Какой же я гуру, несколько лет не работавший с БД и не выходящий из дома...
...
Рейтинг: 0 / 0
22.03.2005, 22:04
    #32974872
Александр Соколов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
MarkelenkovМне с практической точки зрения интересно поведение при модификациях (возможно частых) только части огромной сжатой несекционированной таблицы. Что касается небольших часто модифицируемых таблиц, то согласен.
В таком случае исследование должно быть четко поделено на 2 части: немодифицируемые таблицы и модификация сжатых таблиц.

Markelenkovписать статьи я не люблю :)
Поможем...
...
Рейтинг: 0 / 0
22.03.2005, 22:04
    #32974875
Ааз
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Александр СоколовКакой же я гуру, несколько лет не работавший с БД и не выходящий из дома...Большое видится на расстоянии.

Андрей
...
Рейтинг: 0 / 0
23.03.2005, 10:42
    #32975454
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
2delphi7

Так чем закончилось?
...
Рейтинг: 0 / 0
23.03.2005, 11:12
    #32975585
Stax.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
delphi7
---------Blocker(s)-------- ---------Waiter(s)---------
Resource Name process session holds waits process session holds waits
TM-00006a51-00000000 49 83 SX SSX 33 39 SX SSX
TM-00006a51-00000000 33 39 SX SSX 49 83 SX SSX
session 83: DID 0001-0031-00000090 session 39: DID 0001-0021-00004CB1
session 39: DID 0001-0021-00004CB1 session 83: DID 0001-0031-00000090

Извените что вмешиваюсь

2 delphi7
Возможно что-то не проиндексировано
Что возвращает
Код: plaintext
1.
select * from dba_objects where OBJECT_ID=TO_NUMBER('6A51','XXXX');

ЗЫ
SQL> select BANK_NAME from bank_ where BANK_N='000335719';

BANK_NAME
--------------------------------------
ГОРЛІВСЬКА Ф-Я АКБ "НАДРА"


Мож мы колеги (конкуренты)
...
Рейтинг: 0 / 0
23.03.2005, 20:07
    #32977254
Markelenkov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Александр Соколов Markelenkovписать статьи я не люблю :)
Поможем...
Спасибо, как-нибудь без меня.
...
Рейтинг: 0 / 0
23.03.2005, 23:07
    #32977367
Zh
Zh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
Код: plaintext
PDATE wfil.account_ins SET ACCID= 426700 , ACC= 2600 , CURR= 980 , BS= 2600 , CL= 70 , LS= 1 , DATOPEN=to_date('30.09.2004 11:34:25','dd.mm.yyyy hh24:mi:ss'), DATP=to_date('22.03.2005','dd.mm.yyyy'), DATCLOSE =NULL, STATUS= 0 , NAME='...................', PSS =NULL WHERE mfo= 1  AND ACCID = 426700 

А точно все эти поля нужно обновлять? Больше похоже что апдейтятся все, а не только измененные.
...
Рейтинг: 0 / 0
28.03.2005, 11:00
    #32983373
Tamito
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
2Stax

Stax
ЗЫ
SQL> select BANK_NAME from bank_ where BANK_N='000335719';

BANK_NAME
--------------------------------------
ГОРЛІВСЬКА Ф-Я АКБ "НАДРА"


Мож мы колеги (конкуренты)


2delphi7 - Названия схем и приложений какие то уж знакомые :-)


Код: plaintext
1.
2.
3.
4.
5.
SQL> select Value from w_opday_ini where name = 'BANKNAME';

VALUE
--------------------------------------
Філія ВАТ КБ "Надра" Сумське РУ
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
28.12.2018, 09:15
    #39754332
knek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
подскажите пожалуйста: как после такой ошибки разблокировать таблицу?
...
Рейтинг: 0 / 0
28.12.2018, 09:21
    #39754338
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
knekкак после такой ошибки разблокировать таблицу?Так же, как и не после.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Очень срочно!!! ORA-00060: deadlock detected while waiting for resource / 24 сообщений из 24, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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