powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / fb_lock_print -d при нормальной нагрузке
25 сообщений из 55, страница 1 из 3
fb_lock_print -d при нормальной нагрузке
    #38631875
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При штатной нагрузке снимаю показания fb_lock_print -d:

LOCK_HEADER BLOCK
Version: 145, Active owner: 18740408, Length: 25600000, Used: 20939056
Flags: 0x0001
Enqs: 16615746268, Converts: 32087757, Rejects: 256624916, Blocks: 23096686
Deadlock scans: 201, Deadlocks: 1, Scan interval: 10
Acquires: 16951459137, Acquire blocks: 4208755341, Spin count: 0
Mutex wait: 24.8%
Hash slots: 10007, Hash lengths (min/avg/max): 0/ 1/ 9
Remove node: 0, Insert queue: 0, Insert prior: 0
Owners (188): forward: 3890904, backward: 15519968
Free owners (39): forward: 5333208, backward: 20419528
Free locks (7614): forward: 93120, backward: 238968
Free requests (-915950348): forward: 4526656, backward: 2810128
Lock Ordering: Enabled


Спецы посоветовали обратится к разработчикам FB. Что тут не так?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38631890
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar,

снимай показания хотя бы раз в полчаса, чтобы динамику видеть.

Подозрительно только большое кол-во Free requests (аж счётчик переполнился).
Хотя, на активной живой системе без ключа -с этому тоже верить не особо можно.
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38631900
Фотография Alexey Kovyazin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Много mutex wait.
Это означает, что приложение разработано таким образом, что постоянно лезет к каким-то ресурсам, получает отлуп и снова лезет.

Например, такого можно добиться, если сделать цикл с условием выхода по времени , внутри которого идет попытка апдейта некой записи, в случае возникновения ошибки она давится, и снова идет попытка апдейта.
Цель такого цикла - пытаться захватить запись на чтение путем холостого апдейта. При длине цикла в 3 сек сервер может сделать тысячи (а то и десятки тысяч) безуспешных апдейтов.

Также много Deadlock scan - это когда по истечении [дефолтных] 10 сек Firebird лезет проверять, а не дедлок ли это возник? И из 201 сканов только 1 дедлок - т.е. написано так, что бывают 10 секундные зависания.

Так что обращаться к разработчикам Firebird незачем, надо учиться писать правильные приложения.
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38631923
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А это не может быть разновидность CORE-2591 ?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632000
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladGallemar,

снимай показания хотя бы раз в полчаса, чтобы динамику видеть.

Подозрительно только большое кол-во Free requests (аж счётчик переполнился).
Хотя, на активной живой системе без ключа -с этому тоже верить не особо можно.
запущу на каждые полчаса. С ключом -d делать?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632040
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar,

-c -d <database>

PS ничего ты там не найдёшь
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632167
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladGallemar,

-c -d <database>

PS ничего ты там не найдёшь
Что тогда делать? Как найти узкое место?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632170
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начал снимать данные fb_lock_print -d -c c:\S-Market\DBase\SUPERMAGDK.FDB, почему то получаю сообщение об ошибке:
Firebird lock print utility.
Usage: fb_lock_print (-d | -f) [<parameters>]

One of -d or -f switches is mandatory:
-d <database file name> specify database which lock table to be printed
-f <lock table file name> specify lock table file itself to be printed

Optional parameters are:
-o print list of lock owners
-p same as -o
-l print locks
-r print requests made by lock owners (valid only if -o specified)
-h print recent events history
-a print all of the above (equal to -o -l -r -h swithes)
-s <N> print only locks of given series (valid only if -l specified)
-n print only pending owners (if -o specified) or
pending locks (if -l specified)
-w print "waiting for" list for every owner
(valid only if -o specified)
-c acquire lock manager's mutex to print consistent view of
lock table (valid only if -d specified)
-m make output in html format

-i[<counters>] [<N> [<M>]] interactive mode:
print chosen lock manager activity counters during <N> seconds
witn interval of <M> seconds. Defaults are 1 sec for both values.
Counters are:
a number of mutex acquires, acquire blocks, etc
o number of lock operations (enqueues, converts, downgrades, etc)
t number of operations with most important lock series
w number of waits, timeouts, deadlock scans, etc
Default is aotw

-? this help screen


Как тогда выглядят правильные аргументы?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632172
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar> Как тогда выглядят правильные аргументы?

fb_lock_print -d c:\S-Market\DBase\SUPERMAGDK.FDB -c
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632173
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar> Начал снимать данные fb_lock_print -d -c c:\S-Market\DBase\SUPERMAGDK.FDB, почему то получаю сообщение об ошибке:
Ну сказал же Влад: -c -d <database>!!!
А не наоборот, как ты пытаешься делать...

--
Vladimir A.Bakhvaloff
E-Mail: zirra1969<bark>gmail<dot>com

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632174
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значение не в "наобороте" (можно и как Влад указал, AFAIK),
а в том, что имя (путь) файла БД - это параметр ключа d, а не с.

P.S. Можно ещё результат в файл выводить.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632177
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirraGallemar> Начал снимать данные fb_lock_print -d -c c:\S-Market\DBase\SUPERMAGDK.FDB, почему то получаю сообщение об ошибке:
Ну сказал же Влад: -c -d <database>!!!
А не наоборот, как ты пытаешься делать...

--
Vladimir A.Bakhvaloff
E-Mail: zirra1969<bark>gmail<dot>com



Наоборот такая же судорога
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632178
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамЗначение не в "наобороте" (можно и как Влад указал, AFAIK),
а в том, что имя (путь) файла БД - это параметр ключа d, а не с.

P.S. Можно ещё результат в файл выводить.

Целиком это выглядит так:
C:
cd C:\Program Files\Firebird\Firebird_2_5\bin

set VTIME=%time:~0,-3%
set VTIME=%VTIME::=.%
fb_lock_print -c -d c:\S-Market\DBase\SUPERMAGDK.FDB -c >> D:\fb_lock_print_%date%_%VTime%.txt
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632179
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Значение не в "наобороте" (можно и как Влад указал, AFAIK),
> а в том, что имя (путь) файла БД - это параметр ключа d, а не с.
Я это и имел в виду... ;)))

--
Vladimir A.Bakhvaloff
E-Mail: zirra1969<bark>gmail<dot>com

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632180
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернее вот так:
C:
cd C:\Program Files\Firebird\Firebird_2_5\bin

set VTIME=%time:~0,-3%
set VTIME=%VTIME::=.%
fb_lock_print -c -d c:\S-Market\DBase\SUPERMAGDK.FDB >> D:\fb_lock_print_%date%_%VTime%.txt

а то к лишней -с прицепится кто нибудь
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632187
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GallemarЧто тогда делать? Как найти узкое место?Начать с начала, а не с откуда попало.
Симптомы проблем какие ?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632196
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,база после рестора через полтора-два месяца теряет производительность,усеры жалуются на тормоза
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632334
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так как правильно снять данные с ключами -с -d ?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632381
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemarhvlad,база после рестора через полтора-два месяца теряет производительность,усеры жалуются на тормозаУ "базы" нет "производительности".
Есть запросы, есть рантайм статистика, есть ДБА, который должен знать как запросы ведут себя обычно и какие запросы начинают "тормозить" и при каких условиях.
Есть мониторинг и трейс, которые позволяют исследовать состояние после рестора и два месяца спустя.

Состояние таблицы блокировок - это последнее место, куда тебе, как ДБА, нужно смотреть.
Тем более, что базовая её настройка уже произведена.
Тем более, что ты не понимаешь чисел, которые в ней присутствуют (без обид).

GallemarТак как правильно снять данные с ключами -с -d ?Указывать файл БД параметром для -d и писать таки латинскую "c"
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632392
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladGallemarhvlad,база после рестора через полтора-два месяца теряет производительность,усеры жалуются на тормозаУ "базы" нет "производительности".
Есть запросы, есть рантайм статистика, есть ДБА, который должен знать как запросы ведут себя обычно и какие запросы начинают "тормозить" и при каких условиях.
Есть мониторинг и трейс, которые позволяют исследовать состояние после рестора и два месяца спустя.

Состояние таблицы блокировок - это последнее место, куда тебе, как ДБА, нужно смотреть.
Тем более, что базовая её настройка уже произведена.
Тем более, что ты не понимаешь чисел, которые в ней присутствуют (без обид).

GallemarТак как правильно снять данные с ключами -с -d ?Указывать файл БД параметром для -d и писать таки латинскую "c"

Таки получилось.
С тобой как то можно приватно пообщаться (mail,icq,skype)?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632393
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня уже ощущение что стабильно работающая БД это или база в 2-3 гига,которую каждый день ресторят или это мифическое создание,её никто не видел,но все о ней говорят
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632440
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemarу меня уже ощущение что стабильно работающая БД это или база в 2-3 гига,которую каждый день ресторят или это мифическое создание,её никто не видел,но все о ней говорят1) Ты с теми запросами, что сотни секунд идут, разобрался или нет ? (я про результат трейса, который ты мну присылал недели три взад, а я на них натравливал grep + sort и вернул тебе в виде "рейтинга" номера строк, в которых записана статистика с самыми проблемными значениями времени вып-я)
2) Статистику по индексам обновляешь или снова "до понедельника" отложил ?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632447
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗЫ.
Пункт "1)", ЕМНИП, ты должен применять уже месяц как.
Запускать трейс утром, ставить там порог time_threshold = 2000 (например), ждать 5-6 часов. Затем изучать полученный лог (вместе с разрабом :)).
Какие-нить результаты этой деятельности есть или нет ?
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632452
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидЗЫ.
Пункт "1)", ЕМНИП, ты должен применять уже месяц как.
Запускать трейс утром, ставить там порог time_threshold = 2000 (например), ждать 5-6 часов. Затем изучать полученный лог (вместе с разрабом :)).
Какие-нить результаты этой деятельности есть или нет ?
1. Изучаем с разработчиком,пока ничего не увидели.
2. Статистику пересчитываю давно,после поломки делали рестор,так что чистота эксперимента нарушена.

Для аудита выпросил Fb TraceManager, с ним удобнее
...
Рейтинг: 0 / 0
fb_lock_print -d при нормальной нагрузке
    #38632455
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид1) Ты с теми запросами, что сотни секунд идут, разобрался или нет ? (я про результат трейса, который ты мну присылал недели три взад, а я на них натравливал grep + sort и вернул тебе в виде "рейтинга" номера строк, в которых записана статистика с самыми проблемными значениями времени вып-я)
2) Статистику по индексам обновляешь или снова "до понедельника" отложил ?
С запросами косяк главный в том что это как правило большие отчеты или работа модуля заказов,это очень нагруженные процессы.
...
Рейтинг: 0 / 0
25 сообщений из 55, страница 1 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / fb_lock_print -d при нормальной нагрузке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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