Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / проблема с БД / 25 сообщений из 33, страница 1 из 2
19.10.2015, 08:24
    #39079669
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Добрый всем день
Сегодня база стала с утра тормозить (даже банально IBE цепляюсь несколько минут против 20 секунд,об остальных операциях молчу).
Начал изучать мониторинг, статистику и т.п.
В статистике :
Oldest transaction 14909543
Oldest active 14909544
Oldest snapshot 14909544
Next transaction 15148541
т.е. мусор собран на ять, висящих транзакций нету. В итоге от вышестоящего руководства получил команду на перезапуск сервера, выкинул всех из БД shutdown, перезапустил службу. После захода пользователей опять проблема повторилась. Начал изучать вывод fb_lock_print и увидел там:
OWNER BLOCK 30626176
Owner id: 25702046371938308, type: 1, pending: 41230440
Process id: 5984224 (Alive), thread id: 5988032
Flags: 0x04 wait infn
Requests (3641): forward: 25746016, backward: 41230440
Blocks: *empty*
30626176 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
40647312 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
15266496 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
40647312 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
69581696 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
40647312 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
15266496 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
40647312 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on
19256864 waits on
57670720 waits on
36343464 waits on
57670720 waits on
8110376 waits on
57670720 waits on
36343464 waits on
57670720 waits on


хотя в подключениях нет с PID 57670720 и 36343464 и т.п. Что это такой? Менеджер блокировок глючит? И может это влиять на работу БД?
...
Рейтинг: 0 / 0
19.10.2015, 08:43
    #39079687
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Становится всё печальнее:

OWNER BLOCK 2056864
Owner id: 25681396169179140, type: 1, pending: 43642616
Process id: 5979416 (Alive), thread id: 5978312
Flags: 0x04 wait infn
Requests (2719): forward: 270136, backward: 43642616
Blocks: *empty*
2056864 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
60215632 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
1499736 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
60215632 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
40644120 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
60215632 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
1499736 waits on
36430352 waits on
30626176 waits on
68835680 waits on
69105744 waits on nothing.
36440136 waits on nothing.
36430352 (potential deadlock).
printout stopped after 51 owners
...
Рейтинг: 0 / 0
19.10.2015, 09:06
    #39079710
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
если хочешь, чтобы тебе отвечали - пиши в одно место, а не в несколько. Я не собираюсь дублировать свои ответы.
...
Рейтинг: 0 / 0
19.10.2015, 09:07
    #39079711
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
dimitr,извини
...
Рейтинг: 0 / 0
19.10.2015, 11:43
    #39079885
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Gallemarт.е. мусор собран на ять, висящих транзакций нету.
лично уже ответили, но все равно чтобы топик заполнить:
может ты не то скопировал, но даже визуально 151 отличается от 149
Next transaction 15148541 - Oldest active 14909544 = 239997. То есть, столько транзакций "назад" торчит активная транзакция.
Соответственно, смотрим в mon$transactions, находим mon$attachment_id, находим его в mon$attachments, и решаем, что с ним делать. Предварительно успев посмотреть, что делает он сам (в mon$statements).
...
Рейтинг: 0 / 0
19.10.2015, 12:02
    #39079927
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
На текущий момент в базе:
Oldest transaction 14909543
Oldest active 15973571
Oldest snapshot 15973571
Next transaction 16178143

Разрыв - 204572. Транзакция 15973571 стартовала час назад, начата модулем группового оприходования. Разрыв 200-250 тысяч при активной работе усеров у нас это нормально.
...
Рейтинг: 0 / 0
19.10.2015, 13:08
    #39080001
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Gallemar,

50 транзакций в секунду в течении всего дня?
...
Рейтинг: 0 / 0
19.10.2015, 13:36
    #39080039
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
dimitr,

в среднем 1.65 млн. транзакций в сутки. если 24 часа, то 18 транзакций в секунду. и т.д.
...
Рейтинг: 0 / 0
19.10.2015, 13:37
    #39080040
sergpn_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
dimitrGallemar,

50 транзакций в секунду в течении всего дня?
У нас примерно также - вот типичная статистика с интервалом примерно 20-40 сек.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
        Oldest transaction      766922035
        Oldest active           766922036
        Oldest snapshot         766922036
        Next transaction        767280287


	Oldest transaction      767097264
        Oldest active           767154147
        Oldest snapshot         767154147
        Next transaction        767286420

	Oldest transaction      767097264
        Oldest active           767154147
        Oldest snapshot         767154147
        Next transaction        767305828

	Oldest transaction      767097264
        Oldest active           767154147
        Oldest snapshot         767154147
        Next transaction        767316997

	Oldest transaction      767097264
        Oldest active           767154147
        Oldest snapshot         767154147
        Next transaction        767346984
...
Рейтинг: 0 / 0
20.10.2015, 04:31
    #39080769
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
хм
сейчас статистика показывает:
Oldest transaction 16269263
Oldest active 18256724
Oldest snapshot 17123384
Next transaction 18381561

По MON$ транзакции 17123384 нет, как теперь найти её инициатора?
...
Рейтинг: 0 / 0
20.10.2015, 04:40
    #39080772
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Разобрался, это gbak не отработал ещё
...
Рейтинг: 0 / 0
20.10.2015, 05:41
    #39080778
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Блин,база весит ужасно,скоро разденут до кальсон,босиком по утреннему снегу заведут за амбар и расстреляют
...
Рейтинг: 0 / 0
20.10.2015, 13:13
    #39081165
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Gallemar,

выясняй, что вдруг произошло. кто-то написал кривой запрос, или сдох диск в рэйде, или еще что-то.
...
Рейтинг: 0 / 0
20.10.2015, 13:39
    #39081208
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
GallemarПо MON$ транзакции 17123384 нет
Потому что искать надо не 17123384, а 17123385.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.10.2015, 14:22
    #39081263
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
GallemarПо MON$ транзакции 17123384 нет, как теперь найти её инициатора?
ты все забыл.
Oldest Snapshot - это маркер самой старой активной транзакции, которая была жива на момент старта oldest active, имеющей уровень изолированности snapshot (для RC OST = OAT).
Соответственно, OST блокирует OAT, который в последнем примере 18256724. Именно эту и надо искать.
OAT - нижняя граница активных транзакций. Транзакции меньше OAT давно завершены.
...
Рейтинг: 0 / 0
20.10.2015, 14:31
    #39081282
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
kdvGallemar,

выясняй, что вдруг произошло. кто-то написал кривой запрос, или сдох диск в рэйде, или еще что-то.
C запросами всё ОК. Проблему решил удалением триггеров IBReplicator и физической перезагрузкой сервера. Такое ощущение,что проблема с RAID. Пока оставлю как есть,буду смотреть будет ли опять деградация скорости. Потом перенесу на другой массив базу,день погоняю, верну репликацию.
...
Рейтинг: 0 / 0
06.11.2015, 10:19
    #39096222
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Нечто вообще удивительно - база висит,в выводе fb_lock_print
LOCK_HEADER BLOCK
Version: 145, Active owner: 0, Length: 134217728, Used: 74005072
Flags: 0x0001
Enqs: 5015557120, Converts: 21452651, Rejects: 167916930, Blocks: 128242491
Deadlock scans: 7957, Deadlocks: 0, Scan interval: 10
Acquires: 5990776747, Acquire blocks: 1024427854, Spin count: 0
Mutex wait: 17.1%
Hash slots: 65521, Hash lengths (min/avg/max): 0/ 1/ 10
Remove node: 0, Insert queue: 0, Insert prior: 0
Owners (375): forward: 18721456, backward: 58635696
Free owners (78): forward: 74002608, backward: 62869744
Free locks (26769): forward: 538120, backward: 4716216
Free requests (138304): forward: 1244320, backward: 60388024
Lock Ordering: Enabled
...
Рейтинг: 0 / 0
06.11.2015, 10:36
    #39096251
DBConstructor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Gallemar, автоматическая сборка мусора по интервалу транзакций, как я понимаю, отключена для этой БД?
...
Рейтинг: 0 / 0
06.11.2015, 10:37
    #39096255
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
DBConstructorGallemar, автоматическая сборка мусора по интервалу транзакций, как я понимаю, отключена для этой БД?
Отключена,sweep по расписанию.
...
Рейтинг: 0 / 0
06.11.2015, 16:04
    #39096783
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
GallemarНечто вообще удивительно - база висит,в выводе fb_lock_print
лок-принт с остальными ключами ты делал в этот момент?
...
Рейтинг: 0 / 0
06.11.2015, 16:42
    #39096818
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
dimitrGallemarНечто вообще удивительно - база висит,в выводе fb_lock_print
лок-принт с остальными ключами ты делал в этот момент?
Да,скину позже на почту.
...
Рейтинг: 0 / 0
07.11.2015, 05:12
    #39097129
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
dimitr, отправил ссылку на архив на почту.
...
Рейтинг: 0 / 0
17.12.2015, 09:20
    #39130448
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
В общем,проблему победил. Причин оказалось полно:
1. Из 1с запускался запрос с планом natural на таблице в 3 млн. строк.
2. В программе разработчик допустил ошибку в обновлении, один из модулей зависал.
3. Один из нагруженных процессов вынесен на копию базы.
...
Рейтинг: 0 / 0
17.12.2015, 12:08
    #39130640
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
Gallemar,

ну и как - сильно помог вывод lockprint ? ;)
...
Рейтинг: 0 / 0
17.12.2015, 12:09
    #39130642
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с БД
hvladGallemar,

ну и как - сильно помог вывод lockprint ? ;)
Не особо. Поймал по mon-таблицам.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / проблема с БД / 25 сообщений из 33, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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