Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Rollback чужих транзакций / 25 сообщений из 62, страница 1 из 3
17.12.2013, 14:39:05
    #38503618
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Использую Firebird. Необходимо откатить чужие транзакции. Как это можно сделать?
...
Рейтинг: 0 / 0
17.12.2013, 14:45:13
    #38503634
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Убей коннект, их породивший, используя таблицу мониторинга MON$ATTACHMENTS.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 14:52:46
    #38503654
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
сильно подозреваю, что ему нужен флэшбэк...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 15:17:01
    #38503696
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Dimitry Sibiryakov,

коннект я убиваю, но мне так же надо откатить чужие транзакции. На сколько я понял после дисконекта пользователей транзакции остаются активными, но Firebird в последствии пытается поставить блокировку на "активную" транзакцию и если у него это сделать не получается (а у него это не должно получиться так как коннекта пользователя с БД нет), то статус транзакции меняется на "неактивный" и транзакция помещается в "мусор". Но на сколько я понимаю это механизм выполняется не сразу. А так как мне необходимо провести обслуживание БД без зависших транзакций (исходя из вышеперечисленного не буду же я ждать пока сервер соизволит деактивировать транзакции и отправит их в мусор), то надо их откатывать вручную.
...
Рейтинг: 0 / 0
17.12.2013, 15:19:25
    #38503699
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Мимопроходящий,

можно ли поподробней о Flashback если конечно мне это поможет?
...
Рейтинг: 0 / 0
17.12.2013, 15:32:09
    #38503738
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Hello, Freddie26!

всё это чушь.
настрой keepalive правильно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 15:34:36
    #38503746
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26Но на сколько я понимаю это механизм выполняется не сразу. А так как мне
необходимо провести обслуживание БД без зависших транзакций
Во-первых, ты хреново понимаешь. При убиении коекта его транзакции сразу помечаются как
откаченные.
Во-вторых, что за бредовое "обслуживание БД" ты там проводишь?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 16:49:18
    #38503920
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Dimitry Sibiryakov,

я лично начинающий программист. Компания в которой работаю столкнулась с тем, что повреждаются базы. "мы" идем их чинить, а для этого необходимо принудительно отключать пользователей от БД, откатывать висящие транзакции, которые возникли в ходе эксплуатации БД и собственно восстанавливать БД. Про механизм KEEPALIVE я почитал прежде чем сюда написать, но мне сотрудник говорит, что по факту механизм не работает как надо. Потому я и занимаюсь написанием утилиты по откату чужих транзакций.

Проблема в том что администраторов БД либо нет, либо они не делают то что от них нужно. Предполагаю потому механизм KEEPALIVE и не работает...
Для таких случаев и утилита - нет возможности ходить и администрировать БД самим
...
Рейтинг: 0 / 0
17.12.2013, 17:01:56
    #38503943
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26я лично начинающий программист. Компания в которой работаю столкнулась с
тем, что повреждаются базы. "мы" идем их чинить
Т.е. ты начинающий программист, о Firebird ни черта не знаешь,
http://ibase.ru/devinfo/db_repair.htm не читал, но уверенно идёшь чинить базу и пытаешься
написать утилиту, которая как раз ненароком может базу убить. Поздравляю, премия Дарвина
Вас ожидает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 17:34:49
    #38504012
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Dimitry Sibiryakov,

меня курируют люди, предполагаю которые знают что нужно для починки этой базы. Они ее разработали и занимаются ее сопровождением. Я же выполняю задания которые мне дают и по ходу учусь. Для того чтобы НЕ убивать клиентские базы у меня есть тестовые, а прежде чем чинить клиентские утилита сотни раз проверится, будет проанализирована и доработана. А за чтиво благодарен. Обязательно ознакомлюсь
...
Рейтинг: 0 / 0
17.12.2013, 18:05:51
    #38504074
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26предполагаю которые знают что нужно для починки этой базы.
похоже, что не знают. Иначе бы у них база уже давно прекратила "повреждаться".

Freddie26Потому я и занимаюсь написанием утилиты по откату чужих транзакций.
ты никогда такую написать не сможешь. Отрубить пользователей - можно, разными способами. При этом, как тебе уже сказали, те транзакции сами станут rollback. Поэтому откатывать уже будет нечего.
...
Рейтинг: 0 / 0
17.12.2013, 20:16:39
    #38504232
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
kdv,

мне выше предложили ссылку, в которой предлагаются причины поломки баз (советую почитать прежде чем обвинять разработчиков). В нашем случае проблема возникает в связи с перепадами напряжения, когда не успевает включиться дополнительный источник питания сервер падает, а так как у Firebird нет механизма принятия решений в сложившейся ситуации и транзакции остаются активными до того момента как сервер не установит им статус "неактивна" (KEEPALIVE), то на момент backup/restore могут остаться активные транзакции. Соответственно возникает необходимость удалять их вручную, а так как клиентских баз может быть много, то за администраторов мне приходится делать их работу в своей утилите...

Почему не получится? IBExpert выполняет нужную мне задачу, мне удалось вытащить что происходит в этот момент, осталось только это использовать.

И вообще зачем кидаться камнями в новичков?! Я обратился с просьбой предложить решение. Если бы я не знал что можно использовать -gfix, что можно настроить KEEPALIVE - я бы сюда не писал. Проблема в том что -gfix работает грубо, в результате я с большой вероятностью потеряю половину базы, потому пишем свою утилиту, которая уже дает больше, чем -gfix.
...
Рейтинг: 0 / 0
17.12.2013, 20:23:32
    #38504238
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26,

Извините конечно, но про бекап вы чушь написали, ибо он сам стартует транзакцию снапшот и не завершённые транзакции ему побоку. Я надеюсь вы бекап запускаете с переключателем -g
...
Рейтинг: 0 / 0
17.12.2013, 20:36:48
    #38504251
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26сервер падает, а так как у Firebird нет механизма принятия решений в
сложившейся ситуации и транзакции остаются активными до того момента как сервер не
установит им статус "неактивна" (KEEPALIVE), то на момент backup/restore могут остаться
активные транзакции. Соответственно возникает необходимость удалять их вручную
Извините, Вы где наслушались этого бреда? Какой KEEPALIVE если упал целый сервер? Как
транзакции могут остаться активными, если сервер выключился? Зачем вообще производить
backup/restore? На эти вопросы Вы в состоянии дать вменяемые ответы?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 20:39:22
    #38504254
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Симонов Денис,

Всемирная паутина говорит о грубости работы -gfix и о куче минусов. Я честно говоря только на словах знаю про -gfix, понимаю что там большой функционал, но не разу ее не запускал. Однако те кто из сотрудников запускал говорят: "совместно придуманное нами решение лучше". Работает примерно по тому же принципу, но результат лучше и быстрее получается.
...
Рейтинг: 0 / 0
17.12.2013, 20:44:18
    #38504261
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Dimitry Sibiryakov,

Сервер упал, что происходит с транзакциями пользователей, которые были подключены в этот момент к базе?
На сколько я понимаю это порождает ошибки в базе, таблицы становятся не читаемыми.
...
Рейтинг: 0 / 0
17.12.2013, 21:38:45
    #38504300
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26Сервер упал, что происходит с транзакциями пользователей, которые были подключены в этот момент к базе?капут им.
Freddie26На сколько я понимаю это порождает ошибки в базеошибки порождает незаконченная запись на диск. форсед райтс весьма им потоворствует.
Freddie26таблицы становятся не читаемымифайл БД страничный, в нем страницы, а не таблицы.


Freddie26что происходитДоку читай однако.
...
Рейтинг: 0 / 0
17.12.2013, 21:54:41
    #38504321
NickDee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26Сервер упал, что происходит с транзакциями пользователей, которые были подключены в этот момент к базе?
На сколько я понимаю это порождает ошибки в базе, таблицы становятся не читаемыми.
Имхо даже убиение процесса не ломает базу. Точнее не должно, by design :)
...
Рейтинг: 0 / 0
17.12.2013, 22:10:30
    #38504335
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26мне выше предложили ссылку, в которой предлагаются причины поломки баз (советую почитать прежде чем обвинять разработчиков)
вы сами-то эту статью читали? Похоже что нет, иначе не предлагали бы мне ее почитать. Потому что (сюрприз), это я эту статью написал.
Freddie26 то на момент backup/restore могут остаться активные транзакции.
на момент backup - могут, но это вас не должно волновать, а на момент restore - не могут, никак, в принципе.
Freddie26 Проблема в том что -gfix работает грубо, в результате я с большой вероятностью потеряю половину базы
проблема в том, что вы новичок, и постоянно пишете чушь, совершенно этого не стесняясь.
Freddie26Всемирная паутина говорит о грубости работы -gfix и о куче минусов.
где написано о "грубости его работы"? Да, он не чинит ряд повреждений, зато есть наш FBFirstAid, может, проще купить его, чем писать свою утилиту, которая будет заведомо хуже?

Источник питания не успевает включиться? Ну так купите UPS. Я так понимаю, что у вас "источник питания" это какой-то дизель-генератор.
Freddie26Сервер упал, что происходит с транзакциями пользователей, которые были подключены в этот момент к базе?
На сколько я понимаю это порождает ошибки в базе, таблицы становятся не читаемыми.
ух, ох... состояния этих транзакций останется в Active в Transaction Inventory Page, и при первом монопольном подключении к базе сервер их сам переведет в RolledBack. Это быстро и не больно, и не может приводить ни к каким повреждениям.
Ошибки в базе происходят, как уже сказали выше, или от незаконченной записи на диск, или от искажений записи. И это вызвано только ОС и железом.
...
Рейтинг: 0 / 0
17.12.2013, 22:13:34
    #38504340
Freddie26
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
NickDee,

к сожалению конечные пользователи БД умудряются убить базу...
...
Рейтинг: 0 / 0
17.12.2013, 22:20:14
    #38504344
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26к сожалению конечные пользователи БД умудряются убить базу...
ты уточняй, как и где. Если база у них - да, конечно умудряются. Но в этом случае повреждения обычно совсем другие.
Я вообще, кстати, в первый раз слышу, чтобы человек при повреждениях базы беспокоился про какие-то там "активные транзакции", которые, как я уже написал, никакого интереса или боязни не представляют в силу архитектуры IB/FB.
...
Рейтинг: 0 / 0
17.12.2013, 23:31:58
    #38504380
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Лично я вообще не понимаю, какие к чёртовой матери
транзакции (да ещё активные), если БД уже повреждена
(и откуда и как об этом узнаёт автор, кстати?).

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.12.2013, 23:36:38
    #38504383
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Гаджимурадов Рустам,

это его фантазии. У ТС что-то там не работает, вот только зачем выдумывать причины не понятно
...
Рейтинг: 0 / 0
17.12.2013, 23:43:35
    #38504389
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Симонов Денис> это его фантазии

Так и я о том же. А вы ему тут про gfix и FW рассказываете.
Утилиту собрался он писать, для автопочинки баз, ага.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.12.2013, 00:10:10
    #38504401
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rollback чужих транзакций
Freddie26конечные пользователи БД умудряются убить базу...
А теперь расскажи нам, милое дитя, что именно ты обозначаешь словом "убить базу".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Rollback чужих транзакций / 25 сообщений из 62, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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