Страница 2 из 3

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 13:25
denissoft
hvlad писал(а):
denissoft писал(а):Проблема в том, что у меня и так все транзакции nowait.
К тому же блокировка выходит, когда одна транзакция читает, а другая в этот момент в ту же таблицу пишет.
обе транзации READ_COMMITED_VERSION NOWAIT
Чем это подтверждается ?
Звонит пользователь, подключаюсь к консоли спрашиваю что делал, так и так смотрела то то и то то.
Лезу на сервер и вижу картину он как раз в этот момент заливал в эту таблицу очередную порцию данных.
Все транзакции nowail, это точно проверял сам по таблицам MON$...
Чтобы всё заработало срубаю соединения сервиса и клиента который завис.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 13:27
denissoft
kdv писал(а):интересное кино. Выясняется, что есть еще какая-то udf...
В UDF в основном работа со строками, форматирование и прочее, в выборке на которых подвешивается не юзается.
Для того на 2.5 и перехожу чтобы избавиться от неё. Так как нужный функционал теперь встроен.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 14:58
denissoft
Всё довольно легко воспроизводится.
Только требуется присутствие 2х пишущих транзакций.
Сделал exe который по таймеру меняет некие данные.
Запускаю 2 копии и аля гоп в момент пересечения они вешаются, хотя установки транзакции nowait
по идее должен выходить dead lock, но его нет в этом то и проблема.

Куда выслать дамп и отчёт fb_lock_print, напишите мыло в личку.

P.S. Тот же пример на FB 2.0 Classic вызывает стабильный dead lock у того или иного процесса.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 15:15
hvlad
На релизе проверял ?
exe и бд (или скрипт её создания) выслать можешь ?

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 15:21
denissoft
hvlad писал(а):На релизе проверял ?
exe и бд (или скрипт её создания) выслать можешь ?
Как раз поставил релиз на свою машину, на ней и пробовал.
Структура очень тяжёлая. Попробую воспроизвести на простой БД.
Дамп то выслать и куда?

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 16:07
hvlad
hvlad at users sf net
архиву расширение смени, иначе SF не пропустит

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 16:36
denissoft
Отправил, если в ближайшее время не получите, отпишитесь.
P.S. на простом примере пока не выходит. Создал новую базу на 2.5 с похожей структурой только без лишних таблиц,
ошибка не проявляется, то есть выходят dead lock-и. Видно надо делать путём укорачивания базы.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 16:48
hvlad
Скачал, посмотрел, спасибо.

Хотелось бы пример. А пока его нет - можно ли повторить и снять дампы с обоих процессов ?

Re: Зависание сервера FB 2.5 RC2

Добавлено: 06 окт 2010, 18:03
denissoft
ОК, завтра сделаю, повторяемость там 100% тная.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 07 окт 2010, 14:50
hvlad
denissoft писал(а):ОК, завтра сделаю, повторяемость там 100% тная.
И как успехи ? :)
Кстати, если повторяется на SC, то смотреть в один дамп мне было бы удобнее, чем в два.
Ну а пример - вообще лучше всего. Не обязательно упрощать, если не получается или это долго.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 07 окт 2010, 17:22
denissoft
Сами сегодня сборку выпускали, потому некогда было заниматься.
Завтра сделаю, обещаю.
Базу послать не могу, с чисто тестовыми данными нет, все тестовые это старые боевые.
Да и большая она, пустая 37 Mb
В общем пока на SS перешли срочность отпала, пользователи не грызут.
Укорочу и данные постираю и можно будет послать, думаю эффект останется.

P.S. SC не ставил.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 10:27
denissoft
Отправил тестовое приложение и базу.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 11:39
hvlad
Спасибо, воспроизвел, изучаю.
Проблема связана с событиями (EVENT), подробнее позже.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 11:54
denissoft
Хорошо буду ждать результатов. :D

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 12:27
hvlad
Попробуй в программе подписаться на события. Всё равно на какие - главное подписаться.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 12:46
denissoft
Зависонов нет, проблема в том, что не всем нужна подписка, это и коннект лишний и проблемы.
Для подписки на Event используется модифицированный IBEvent.
Приложение выслал.
Если потребуется исходники приложения и класса TMyIBEventAlerter вышлю.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 12:51
hvlad
denissoft писал(а):Зависонов нет
Вот и хорошо. Это будет способ обойти багу, пока не исправим в 2.5.1 (хотя в снапшотах исправлено будет конечно раньше, может и сегодня)
denissoft писал(а):проблема в том, что не всем нужна подписка, это и коннект лишний и проблемы.
Не понято о проблемах

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 13:47
denissoft
Проблемы плавающие были в FB 1.5 и плохо воспроизводятся даже на стандартных TIBEvent,
тот class, что использую я практически нивелирует их, в основном это ничего не говорящие access violation в gds32.dll.
Возможно они уже устранены не знаю (в своё время об этой проблеме много писалось на различных форумах).
Не буду утверждать, использую Event редко и события ловят только те пользователи
которым нужно оперативно реагировать на поступление новых данных.
До устранения на Classic перейти всё равно не реально, т.к. даже если приложение будет регистрировать event,
те же подключения из IB_Expert могут вызвать зависания.

P.S. пожалуйста, отпишите по выходу снапшота с решением проблемы.

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 16:55
hvlad
denissoft писал(а):Проблемы плавающие были в FB 1.5 и плохо воспроизводятся даже на стандартных TIBEvent
А при чём тут 2.5 ?
denissoft писал(а):тот class, что использую я практически нивелирует их, в основном это ничего не говорящие access violation в gds32.dll.
Ваш exe с gds32.dll от IB (затесалась ко мне в system32 как-то) постоянно даёт AV. С нормальным клиентом - нет проблем. Выводы ? :)
denissoft писал(а):До устранения на Classic перейти всё равно не реально
Я не склоняю ни к какому переходу :)
denissoft писал(а):т.к. даже если приложение будет регистрировать event,
те же подключения из IB_Expert могут вызвать зависания.
Не понял связи с предыдущим абзацем
denissoft писал(а):P.S. пожалуйста, отпишите по выходу снапшота с решением проблемы.
Исправление уже в SVN, как только снапшот обновится - можно проверять. По идее завтра и обновится.

PS См CORE-3170

Re: Зависание сервера FB 2.5 RC2

Добавлено: 08 окт 2010, 21:30
denissoft
Забей.
В понедельник скачаю, обновлюсь и отпишу по результатам.