powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / deadlock при свипе
25 сообщений из 79, страница 2 из 4
deadlock при свипе
    #39749139
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDenнепонятно, как простейшие запросы "select s.name, s.svalue from serv_settings s" могут
завершится с ошибкой deadlock.

Легко если какой-то чудак запускает их в транзакции с флагами READ COMMITTED NO RECORD
VERSION, что, к сожалению, является умолчанием в некоторых драйверах доступа.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749142
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Сейчас посмотрел код. Для ODBC, через который происходит работа с FB, стоит:
Код: plaintext
1.
2.
	retcode = dll_.SQLSetConnectAttrA(hdbc_, SQL_TXN_ISOLATION_OPTION, (SQLPOINTER)SQL_TXN_SERIALIZABLE, SQL_IS_UINTEGER);
	check_odbc_ret_code(dll_, retcode, hdbc_, SQL_HANDLE_DBC);


Но у меня сейчас начинают закрадываться сомнения, что Odbc-драйвер в действительности ставит уровень Serializable...
Ну и на самом деле мне бы хватило за глаза Repeatable read )) Сейчас уже не вспомню зачем он мне понадобился
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749143
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если верить исходнику ODBC-драйвера, то для SQL_TXN_SERIALIZABLE он выставляет isc_tpb_consistency перед запуском транзакции
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749144
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это могло вызывать вышеуказанные у меня (не у nimarufa) эффекты?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749148
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDenон выставляет isc_tpb_consistency

Это слишком сурово. О конкретных последствиях я даже и не скажу, тут Влад нужен.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749163
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё, вспомнил почему там стоит SQL_TXN_SERIALIZABLE. Он был оставлен так около 10-ти лет назад т.к. когда всё это писалось, выяснилось, что ODBC-драйвер для любой константы устанавливал уровень Read Commited. Я тогда не стал заводить Issue, т.к. нашёл уже заведённый, а потом вся эта фигня была успешно забыта )))
Сейчас проверил, MON$ISOLATION_MODE показывает 2 (2 - read committed record version из https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref-appx05-transacs.html), т.е. баг так и остался.
Так что реальный уровень транзакций - read committed record version.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749165
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Наверное нафик надо выбросить использование ODBC для FB. Тем более что для других СУБД, с которыми работает система, написаны коннекторы через родное API. Но это так уже к слову пришлось. И в данной теме это оффтопик ))
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749167
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDen,

онлайн валидацией не балуетесь ?
Какая архитектура сервера ?
Как часто это повторяется ?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749172
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) нет (а надо?)
2) супер
3) deadlock при select конкретно в этом ПО вижу за всё время в первый раз. Правда, один раз было в другом ПО (которое писал для другого работодателя) что при пересчёте статистики индекса выскочил deadlock, который затем вылазил при любом запросе на всех клиентах. Вылечилось перезапуском FB. Писал об этом тут: https://www.sql.ru/forum/1251138/
Но сегодня deadlock выскакивал не на всех запросах. Часть просто дико тормозило. Встроенный в ПО профайлер выдавал в лог, что длительность выполнения запросов и последующего коммита, могло достигать часа.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749253
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Позвонили, что эта фигня опять началась. Еду в организацию что там в первую очередь посмотреть с базой?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749277
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDen,

трейс запусти, включи там всё, особенно log_errors, log_sweep, дай ему минут 10 поработать хотя бы.
И лог сохрани.
Снимок таблиц мониторинга тоже не помешает.
fb_lock_print -a
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749321
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDengfix -list
я не понял, вы двухфазным коммитом пользуетесь? Иначе зачем эти бессмысленные телодвижения?
снимать надо было fb_lock_print, а не gfix -list почем зря два раза тыкать.

Кроме того, deadlock в логе ФБ и deadlock в логе какого-то там ODBC это абсолютно разные вещи. deadlock в firebird.log относится к блокировкам страниц, а не записей.

Встречный вопрос - у вас там DDL случайно на ходу не выполняется?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749370
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad,
В этот раз я просто проверил скорость диска (т.к. жалобы были именно на дикие тормоза). Так вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло). При этом диск не загружен ничем другим. Сисадмин пока не может разобраться в чём именно дело. Так что ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации.
Кстати, возможно вчера и на прошлой недели тоже были резкие проседания в скорости диска. Это как-то могло вызвать проблему?

kdv,
gfix -list в скрипте сборки мусора вызываться до и после sweep, чтобы видать насколько хорошо этот sweep отработал.

PS: в прошлый раз я поехал туда не подготовленным, т.к. мне вообще не сказали в чём проблема. Наша система большая. База данных - это только небольшая часть системы. Не думал вообще, что ей придётся заниматься. Так что пришлось довольствоваться теми готовыми bat-скриптами для сисадмина, которые были в наличии.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749373
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
насчёт DDL не понял.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749376
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И всё-таки повторю вопрос. В каких случаях возможен ответ сервера "deadlock" при простейших select-запросах? Можно что у нас надо подкрутить?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749380
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDenТак вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло).
...
Кстати, возможно вчера и на прошлой недели тоже были резкие проседания в скорости диска. Это как-то могло вызвать проблему?Проблему с тормозами запросов - конечно могло.
deadlock при выполнении свипа - прямой связи не вижу, это вообще весьма странно выглядит.


ArtDengfix -list в скрипте сборки мусора вызываться до и после sweep, чтобы видать насколько хорошо этот sweep отработал.А какая связь ? Или таки есть 2PC тр-ции ?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749381
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
18.12.2018 12:27, ArtDen пишет:
> ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации.

доморощенных виртуальщиков мочить топить в сортире!
превентивно!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749387
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad,

Ступил. Конкретно gfix -list подсмотрел в какой-то рекомендации, уведенной в инете ))))
Я так понимаю, оно особо там не нужно?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749392
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDen,

оно не мешает, просто вызывает удивление
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749404
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDenВ этот раз я просто проверил скорость диска (т.к. жалобы были именно на дикие тормоза). Так вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло). При этом диск не загружен ничем другим. Сисадмин пока не может разобраться в чём именно дело. Так что ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации.


Огласили бы характеристики сервера. Что означает "виртуализация" в данном случае?
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749453
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DmSer,

К сожалению, нормально поладить с сиадмином не получается. Всё что удалось выяснить, я выкладываю тут.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749463
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
18.12.2018 13:49, ArtDen пишет:

> К сожалению, нормально поладить с сиадмином не получается
> Всё что удалось выяснить, я выкладываю тут.

боюсь, в этом случае всё сведётся к постулатам от сисадмина
на тему того, что "ВАША программа - говно"...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749502
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мимопроходящий,

Он мне сегодня сказал это прямо дословно, только добавил слово "полное" перед "говно" ))) Но это уже оффтоп пошёл. В общем, в данной организации нам не повезло с сисадмином. Но проблему решить надо в любом случае.
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749524
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArtDenОн мне сегодня сказал это прямо дословно, только добавил слово "полное" перед "говно" )))

И вполне возможно, что он прав, без результатов трассировки и аудита мы этого не узнаем.
Но это не отменяет факта, что именно у него диск выдаёт скорость 3 мегабайта в секунду.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
deadlock при свипе
    #39749531
ArtDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я готов согласиться даже на то, что наше ПО - трижды говно, лишь бы выяснить в чём проблема и справить ситуацию )
...
Рейтинг: 0 / 0
25 сообщений из 79, страница 2 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / deadlock при свипе
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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