powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / expdp: lock held by in-doubt distributed transaction
12 сообщений из 12, страница 1 из 1
expdp: lock held by in-doubt distributed transaction
    #39758250
AlexVin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
oracle 12.1.0.2.180717

экпортим табличку

Код: plsql
1.
2.
3.
ORA-31693: Table data object "USER1"."TAB1" failed to load/unload and is being skipped due to error:
ORA-29913: error in executing ODCIEXTTABLEPOPULATE callout
ORA-01591: lock held by in-doubt distributed transaction 111.22.33333



как так?? почему??
неужели нельзя просто считать данные на некий момент времени?
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758259
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexVinнеужели нельзя просто считать данные на некий момент времени?Если распределенная транзакция прервалась между фазами коммита, то ее глобальное состояние неизвестно.
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758260
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758267
AlexVin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопрос не про как откатить.
вопрос, что получается при активно работающем приложении, лупящим распределенными транзакциями, большую таблицу просто невозможно выгрузить(

-2-AlexVinнеужели нельзя просто считать данные на некий момент времени?Если распределенная транзакция прервалась между фазами коммита, то ее глобальное состояние неизвестно.

undo ведь никуда не подевалось. разве не?
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758279
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexVinвопрос не про как откатить.
вопрос, что получается при активно работающем приложении, лупящим распределенными транзакциями, большую таблицу просто невозможно выгрузить
in-doubt ("сомнительное") - суть [короткое] состояние транзакции между фазами двухфазного коммита.
Это промежуток времени, в который все участники распределенной транзакции должны подтвердить успешное завершение первой фазы (собственно фиксации изменений).
Если кто-либо участников распределенной транзакции подтверждения не прислал (или сообщение не дошло), то, вообще говоря, неизвестно - завершена ли транзакция или ее следует откатывать - опять-таки - всем участникам.
Поскольку в распределенной транзакции участвует несколько систем, то undo отдельно взятой по понятным причинам не спасает.
Более того, это состояние не всегда позволяет выполнить согласованное чтение, что ведет к блокировке select... собственно, это, AFAIR, единственный случай, когда select может "повиснуть" на транзакционной блокировке :)
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758287
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousПоскольку в распределенной транзакции участвует несколько систем, то undo отдельно взятой по понятным причинам не спасает.
И да, in-doubt "автомагически" разрешается процессом RECO при восстановлении связи с проблемным узлом - если, конечно, RECO не отключен.

На всякий случай почитайте dba_2pc_pending - давно ли висит и когда ее последний раз дергал RECO.
Если все работает штатно, то попробуйте из спортивного интереса покрутить DISTRIBUTED_LOCK_TIMEOUT.
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758288
AlexVin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чисто по-житейски, если непонятно, могли бы и взять состояние до.)
непонятно, как данные выгрузить-то без оффлайн приложения.
тыкать expdp пока не повезет?
переводить стендбай в снапшот, откатывать распределенки.
что ещё можно придумать?
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758291
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexVinвзять состояние доСостояние данных не определено. Сделай всем зависшим транзакциям коммит или роллбак и состояние будет определено на данный момент.
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758296
AlexVin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-Сделай всем зависшим транзакциям коммит или роллбак и состояние будет определено на данный момент.
не могу по моральным принципам ;)
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758354
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexVin,

Код: plsql
1.
expdp flashback_time=systimestamp
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758358
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexVin,
Но в Datapump Export (Expdp) Fails With ORA-31693, ORA-29913, ORA-01591 Due To Pending Distributed Transactions (Doc ID 1908869.1)
Говорят, чистить однако надо
...
Рейтинг: 0 / 0
expdp: lock held by in-doubt distributed transaction
    #39758370
AlexVin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
flashback_time есть

Vadim Lejnin (Doc ID 1908869.1)
Говорят, чистить однако надо

дауж
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / expdp: lock held by in-doubt distributed transaction
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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