|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDenнепонятно, как простейшие запросы "select s.name, s.svalue from serv_settings s" могут завершится с ошибкой deadlock. Легко если какой-то чудак запускает их в транзакции с флагами READ COMMITTED NO RECORD VERSION, что, к сожалению, является умолчанием в некоторых драйверах доступа. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 19:07 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Сейчас посмотрел код. Для ODBC, через который происходит работа с FB, стоит: Код: plaintext 1. 2.
Но у меня сейчас начинают закрадываться сомнения, что Odbc-драйвер в действительности ставит уровень Serializable... Ну и на самом деле мне бы хватило за глаза Repeatable read )) Сейчас уже не вспомню зачем он мне понадобился ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 19:30 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Если верить исходнику ODBC-драйвера, то для SQL_TXN_SERIALIZABLE он выставляет isc_tpb_consistency перед запуском транзакции ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 19:34 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Это могло вызывать вышеуказанные у меня (не у nimarufa) эффекты? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 19:36 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDenон выставляет isc_tpb_consistency Это слишком сурово. О конкретных последствиях я даже и не скажу, тут Влад нужен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 19:48 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Всё, вспомнил почему там стоит 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. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 20:35 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Наверное нафик надо выбросить использование ODBC для FB. Тем более что для других СУБД, с которыми работает система, написаны коннекторы через родное API. Но это так уже к слову пришлось. И в данной теме это оффтопик )) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 20:41 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDen, онлайн валидацией не балуетесь ? Какая архитектура сервера ? Как часто это повторяется ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 20:48 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
1) нет (а надо?) 2) супер 3) deadlock при select конкретно в этом ПО вижу за всё время в первый раз. Правда, один раз было в другом ПО (которое писал для другого работодателя) что при пересчёте статистики индекса выскочил deadlock, который затем вылазил при любом запросе на всех клиентах. Вылечилось перезапуском FB. Писал об этом тут: https://www.sql.ru/forum/1251138/ Но сегодня deadlock выскакивал не на всех запросах. Часть просто дико тормозило. Встроенный в ПО профайлер выдавал в лог, что длительность выполнения запросов и последующего коммита, могло достигать часа. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2018, 21:07 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Позвонили, что эта фигня опять началась. Еду в организацию что там в первую очередь посмотреть с базой? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 09:20 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDen, трейс запусти, включи там всё, особенно log_errors, log_sweep, дай ему минут 10 поработать хотя бы. И лог сохрани. Снимок таблиц мониторинга тоже не помешает. fb_lock_print -a ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 10:18 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDengfix -list я не понял, вы двухфазным коммитом пользуетесь? Иначе зачем эти бессмысленные телодвижения? снимать надо было fb_lock_print, а не gfix -list почем зря два раза тыкать. Кроме того, deadlock в логе ФБ и deadlock в логе какого-то там ODBC это абсолютно разные вещи. deadlock в firebird.log относится к блокировкам страниц, а не записей. Встречный вопрос - у вас там DDL случайно на ходу не выполняется? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 11:17 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
hvlad, В этот раз я просто проверил скорость диска (т.к. жалобы были именно на дикие тормоза). Так вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло). При этом диск не загружен ничем другим. Сисадмин пока не может разобраться в чём именно дело. Так что ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации. Кстати, возможно вчера и на прошлой недели тоже были резкие проседания в скорости диска. Это как-то могло вызвать проблему? kdv, gfix -list в скрипте сборки мусора вызываться до и после sweep, чтобы видать насколько хорошо этот sweep отработал. PS: в прошлый раз я поехал туда не подготовленным, т.к. мне вообще не сказали в чём проблема. Наша система большая. База данных - это только небольшая часть системы. Не думал вообще, что ей придётся заниматься. Так что пришлось довольствоваться теми готовыми bat-скриптами для сисадмина, которые были в наличии. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:27 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
насчёт DDL не понял. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:30 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
И всё-таки повторю вопрос. В каких случаях возможен ответ сервера "deadlock" при простейших select-запросах? Можно что у нас надо подкрутить? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:33 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDenТак вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло). ... Кстати, возможно вчера и на прошлой недели тоже были резкие проседания в скорости диска. Это как-то могло вызвать проблему?Проблему с тормозами запросов - конечно могло. deadlock при выполнении свипа - прямой связи не вижу, это вообще весьма странно выглядит. ArtDengfix -list в скрипте сборки мусора вызываться до и после sweep, чтобы видать насколько хорошо этот sweep отработал.А какая связь ? Или таки есть 2PC тр-ции ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:38 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
18.12.2018 12:27, ArtDen пишет: > ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации. доморощенных виртуальщиков мочить топить в сортире! превентивно! Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:38 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
hvlad, Ступил. Конкретно gfix -list подсмотрел в какой-то рекомендации, уведенной в инете )))) Я так понимаю, оно особо там не нужно? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:45 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDen, оно не мешает, просто вызывает удивление ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 12:51 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDenВ этот раз я просто проверил скорость диска (т.к. жалобы были именно на дикие тормоза). Так вот, скорость последовательного чтения - менее 3 Мб/сек (до проверки скорости случайного доступа дело даже не дошло). При этом диск не загружен ничем другим. Сисадмин пока не может разобраться в чём именно дело. Так что ему сейчас особо не до запуска трейса. Он что-то там копает в настройках виртуализации. Огласили бы характеристики сервера. Что означает "виртуализация" в данном случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 13:07 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
DmSer, К сожалению, нормально поладить с сиадмином не получается. Всё что удалось выяснить, я выкладываю тут. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 13:49 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
18.12.2018 13:49, ArtDen пишет: > К сожалению, нормально поладить с сиадмином не получается > Всё что удалось выяснить, я выкладываю тут. боюсь, в этом случае всё сведётся к постулатам от сисадмина на тему того, что "ВАША программа - говно"... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 13:56 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
Мимопроходящий, Он мне сегодня сказал это прямо дословно, только добавил слово "полное" перед "говно" ))) Но это уже оффтоп пошёл. В общем, в данной организации нам не повезло с сисадмином. Но проблему решить надо в любом случае. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 14:24 |
|
deadlock при свипе
|
|||
---|---|---|---|
#18+
ArtDenОн мне сегодня сказал это прямо дословно, только добавил слово "полное" перед "говно" ))) И вполне возможно, что он прав, без результатов трассировки и аудита мы этого не узнаем. Но это не отменяет факта, что именно у него диск выдаёт скорость 3 мегабайта в секунду. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2018, 14:40 |
|
|
start [/forum/topic.php?fid=40&msg=39749531&tid=1560870]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 314ms |
total: | 460ms |
0 / 0 |