|
|
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Проблема: Из одного приложения в разных потоках выполняютяся блоки SQL-инструкций. Каждый из потоков не пересекается по PK, но постоянно возникает ошибка ORA-00060: deadlock detected while waiting for resource Причем через N-ый промежуток времени выполняется, но все же одновременное выполннние ствновится приосто не возможным!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 17:52 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Посмотрите, что в трассировочном файле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:20 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Если увас не 10-ка, то Том КайтКак свидетельствует опыт, основной причиной возникновения взаимных блокировок в базах данных Oracle являются неиндексированные внешние ключи. При изменении главной таблицы сервер Oracle полностью блокирует подчиненную таблицу в двух случаях: • при изменении первичного ключа в главной таблице (что бывает крайне редко, если следовать принятому в реляционных базах данных правилу неизменности первичных ключей) подчиненная таблица блокируется при отсутствии индекса по внешнему ключу; • при удалении строки в главной таблице подчиненная таблица также полностью блокируется (при отсутствии индекса по внешнему ключу). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:32 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
*** 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) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:37 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Насколько я понял, вы модифицируете первичный ключ. А это чревато... См. об этом, например, http://www.sql.ru/forum/actualthread.aspx?tid=169028 . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:53 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Что заметно сразу - зачем 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:53 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
2 Александр Соколов Извините, что не в тему. Есть маленький вопрос. Видел, что Вы с Викором Сусойкиным переводили статью на тему сжатия таблиц в Oracle 9.2. Вы занимались каким-либо исследованием данного вопроса или просто сделали перевод? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 18:55 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
2 Markelenkov На момент перевода у наших клиентов не было работающих полномасштабных систем под 9-ой. Виктор обещал попробовать смоделировать это и написать отдельную статью, но, видно, текучка заела... Если кто-нибудь сделает это, публикация в OM/RE гарантируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 19:13 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
авторЕсли кто-нибудь сделает это, публикация в OM/RE гарантируется Сорри за оффтоп :-( А каким образом можно публиковать статьи в OM? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 19:19 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Спасибо, понятно. Просто меня в свое время заинтересовала эта тема, я кое-что поисследовал в 9-ке: /topic/103681&pg=2#797811 В алгоритме мне не все понравилось. Как я понял, в 10g что-то изменилось. Данной версией пока не располагаю, поэтому проверить не могу, хотя немалый практический интерес к этому имеется. Можно взять мои идеи (в смысле, что можно тестировать) в качестве первого приближения для исследования. На авторство и статьи не претендую ;) P.S. Привет Виктору, если он меня помнит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 19:24 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Guest555 А каким образом можно публиковать статьи в OM? Просто шлите их гл. редактору Анатолию Бачину. Его адрес в журнале есть (или abachin@mail.ru). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 19:41 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
MarkelenkovМожно взять мои идеи (в смысле, что можно тестировать) в качестве первого приближения для исследования. На авторство и статьи не претендую ;) Спасибо. Еще бы найти, кто мог бы этим заняться. Мне кажется, часто модифицируемые таблицы можно даже не исследовать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 20:13 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Александр Соколов...Александр Петрович, здравствуйте! Рад видеть гуру в нашем немного бестолковом стаде :-) Андрей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 21:10 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Александр СоколовМне кажется, часто модифицируемые таблицы можно даже не исследовать... Мне с практической точки зрения интересно поведение при модификациях (возможно частых) только части огромной сжатой несекционированной таблицы. Что касается небольших часто модифицируемых таблиц, то согласен. Еще мне интересно поведение при вставке данных массивом (OCI array insert), в том числе, когда вставляемый одной командой insert массив выходит за рамки нескольких блоков, т.е. практически аналог direct path insert в части потока данных. В том числе интересно поведение при наличии LOBов (null и not null). Интересует, конечно же, поведение в 10g, т.к. в 9-ке алгоритм я более-менее исследовал. Когда-нибудь я поизучаю все это, но писать статьи я не люблю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 21:12 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
2 Ааз Какой же я гуру, несколько лет не работавший с БД и не выходящий из дома... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 21:56 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
MarkelenkovМне с практической точки зрения интересно поведение при модификациях (возможно частых) только части огромной сжатой несекционированной таблицы. Что касается небольших часто модифицируемых таблиц, то согласен. В таком случае исследование должно быть четко поделено на 2 части: немодифицируемые таблицы и модификация сжатых таблиц. Markelenkovписать статьи я не люблю :) Поможем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 22:04 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Александр СоколовКакой же я гуру, несколько лет не работавший с БД и не выходящий из дома...Большое видится на расстоянии. Андрей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 22:04 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
2delphi7 Так чем закончилось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 10:42 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
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. ЗЫ SQL> select BANK_NAME from bank_ where BANK_N='000335719'; BANK_NAME -------------------------------------- ГОРЛІВСЬКА Ф-Я АКБ "НАДРА" Мож мы колеги (конкуренты) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 11:12 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Александр Соколов Markelenkovписать статьи я не люблю :) Поможем... Спасибо, как-нибудь без меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 20:07 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
Код: plaintext А точно все эти поля нужно обновлять? Больше похоже что апдейтятся все, а не только измененные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 23:07 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
2Stax Stax ЗЫ SQL> select BANK_NAME from bank_ where BANK_N='000335719'; BANK_NAME -------------------------------------- ГОРЛІВСЬКА Ф-Я АКБ "НАДРА" Мож мы колеги (конкуренты) 2delphi7 - Названия схем и приложений какие то уж знакомые :-) Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2005, 11:00 |
|
||
|
Очень срочно!!! ORA-00060: deadlock detected while waiting for resource
|
|||
|---|---|---|---|
|
#18+
подскажите пожалуйста: как после такой ошибки разблокировать таблицу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2018, 09:15 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32977254&tid=1882983]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
168ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 502ms |

| 0 / 0 |
