powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Бесконечный sweep sweep
25 сообщений из 82, страница 3 из 4
Бесконечный sweep sweep
    #39892046
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock
Basil A. Sidorov
Ох уж эти хирурги, всё бы им резать ...вот тебе таблетка - само отвалится
Код: plaintext
1.
usage: gfix [options] <database>
   -sh(utdown)          shutdown < full  / single / multi>

И давно gfix -shutdown научилось выгонять и запрещать доступ для SYSDBA?
Давно
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892047
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock
Как мне по статистике определить, что таблица проблемная?
Кол-во версий в разы превышает кол-во записей, длинные цепочки версий (max versions >= 10), при этом большое кол-во индексов (>= 5)
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892048
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockИ что же тогда может

OAT-OIT.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892059
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
YuRockИ что же тогда может

OAT-OIT.Я это и имел ввиду.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892060
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock
Да, в облаке в каком-то у них база
Вот из этого места, скорее всего, ноги и растут.
Для виртуалок продают не только ядра/мегабайты, но и I(nput)O(output) P ( er ) S ( econds ).
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892087
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockЯ это и имел ввиду.

Имел ввиду одно, а написал совершенно другое? Ню-ню...

Запуск свипа можно отследить только одним способом: по записи в firebird.log. Всё
остальное - гадание на кофейной гуще.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892092
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockОбычно next-old редко и ненадолго превышает 20k
у Firebird автосвип срабатывает при OST>OIT на sweep interval.
Никакие Next и OAT на автосвип не влияют.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892233
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Запуск свипа можно отследить только одним способом: по записи в firebird.log
Да, так проще. Конечно, записи в логе присутствуют регулярно.
Когда я писал, что "запустился свип", естественно, это я узнал из лога.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892245
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Познавательная тема!

Dimitry Sibiryakov
YuRockИ что же тогда может

OAT-OIT.

kdv
у Firebird автосвип срабатывает при OST>OIT на sweep interval.
Никакие Next и OAT на автосвип не влияют.


В третьих местах (на ibase.ru например) я нашел инфу, что разница вычисляется между "Oldest snapshot" и "Oldest transaction(которая закончилась rollback)" (уже боюсь аббривиатуры придумывать).

Next вообще не влияет, это понятно, выше я хрень писал.

P.S. Я уже не знаю, какая там разница срабатывала, но автосвип запускался, хотя-бы судя по логу.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892250
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock,

так ты нашёл проблемную таблицу? Или теперь будешь следующего зависона ждать?
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892300
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
YuRock,

так ты нашёл проблемную таблицу? Или теперь будешь следующего зависона ждать?
Как же я ее найду, если b/r выполнили.

Ждать зависона... Дело в том, что таких баз работает десяток, уже больше 10 лет (эта база - сравнительно новая, ей как раз года полтора). Некоторые - больше в 3-5-10-20 раз. И зависоны если и случаются (из-за автосвипа), то сами проходят безболезненно.
Правда, в последние как раз полтора-два года появилось изменение в логике работы, связанное как раз с этой таблицей, о которой я уже писал - из нее начали удаляться по 10к записей в день и у нее стало постоянное (примерно) кол-во записей.

Тем не менее, этот случай - исключение (надеюсь).
И всё-таки я собираюсь перевести все такие базы на ручной запуск sweep по расписанию (думаю, так всё же правильнее).
В связи с этим у меня уже несколько вопросов, для понимания и уверенности:
1. Если при запуске sweep будут висеть активные транзакции - он просто ничего не сделает? (я, конечно же, собираюсь выгнать всех перед запуском, но просто интересно)
2. Если в процессе работы sweep будут запускаться транзакции, в т.ч. - пишущие, в т.ч. - снапшоты - как это повлияет на работу и результаты работы sweep?
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892308
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
Arioch,

создай табличку с 10 полями влей в неё 1000000 записей, потом удали все записи. Собери мусор и засеки время.

А теперь снова влей в таблицу 1000000 записей, создай к ней 10 индексов. Удали все записи. Собери мусор и сравни время.

Подумай почему такая разница.


А можно ещё на звёзды ночью поглядеть и подумать.
При чём тут это?

Ты сказал, что в конкретном случае, при конкретных наблюдениях, конкретный процесс упёрся в бутылочное горлышко.

Я тебя спросил - в какое из трёх известных 22021068

Ты не ответил и начал воду лить за всё хорошее против всего плохого
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892321
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockВ третьих местах (на ibase.ru например) я нашел инфу, что разница вычисляется между "Oldest snapshot" и "Oldest transaction(которая закончилась rollback)" (уже боюсь аббривиатуры придумывать).
почему это "в третьих"? И какие тогда "первые" и "вторые"?

У Firebird автосвип срабатывает при OST - OIT >=sweep interval
У InterBase с какой-то там версии (вроде 7.1) автосвип срабатывает при OAT-OIT >=sweep interval.
OIT = Oldest Interesting Transaction = Oldest Transaction
OST = Oldest Snapshot
OAT = Oldest Active
Next = Next

gstat -h employee.fdb
Oldest transaction 668
Oldest active 669
Oldest snapshot 669
Next transaction 671

у gstat в выводе (и в хранении на header page) порядок маркеров транзакций по мере их возрастания попутан (OAT идет раньше, чем OST).

http://www.ibase.ru/summary/

p.s. ты на этом форуме уже 12 лет. За 12 лет мог бы ... почитать что-то.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892325
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockестественно, это я узнал из лога.

А ты сделал попытку узнать что именно привело к зависанию транзакции, приведшей к этому?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892347
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arioch,

а может быть ты таки проведёшь эксперимент и сам посмотришь какие ресурсы уходят?
Что за привычка такая ждать, что тебе всё разжуют и в рот положат.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892352
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockЕсли при запуске sweep будут висеть активные транзакции - он просто ничего не сделает?
почему же. свип будет вычищать мусор в интервале от OIT до OST. Он его всегда вычищает только в этом интервале. Другое дело, что застрявшая активная транзакция не дает этому интервалу расти. Соответственно, свип всегда сканирует всю БД, и вычищает то, что можно.
Уже тут не раз писали, что ФБ пишет в firebird.log о начале и конце свипа, сопровождая сообщение значениями маркеров транзакций. Из которых можно понять, было что-то "застрято" на момент старта (и окончания) свипа, или нет.
YuRockЕсли в процессе работы sweep будут запускаться транзакции, в т.ч. - пишущие, в т.ч. - снапшоты
ну будут, и что? Эти транзакции могут плодить НОВЫЕ версии, которые потом (когда-нибудь) станут новым мусором. Жизнь продолжается.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892354
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvУже тут не раз писали, что ФБ пишет в firebird.log о начале и конце свипа, сопровождая
сообщение значениями маркеров транзакций. Из которых можно понять, было что-то "застрято"
на момент старта (и окончания) свипа, или нет.

Он утверждает, что эти записи видел.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892356
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock1. Если при запуске sweep будут висеть активные транзакции - он просто ничего не сделает? (я, конечно же, собираюсь выгнать всех перед запуском, но просто интересно)
2. Если в процессе работы sweep будут запускаться транзакции, в т.ч. - пишущие, в т.ч. - снапшоты - как это повлияет на работу и результаты работы sweep?

1. Это смотря насколько стара самая старая активная транзакция. Иначе какой был бы смысл в auto sweep
2. Может повлиять, но это не обозначает, что sweep ничего не сделает
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892358
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock,

грубо говоря, если бы работа sweep требовала отсутствия активных транзакции, то никто бы не стал делать auto sweep
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892380
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
почему это "в третьих"?

Первые два источника информации были в этой теме этого форума
kdv
И какие тогда "первые" и "вторые"?

Первое:
Dimitry Sibiryakov
OAT-OIT

Второе:
kdv
у Firebird автосвип срабатывает при OST>OIT на sweep interval.
Никакие Next и OAT на автосвип не влияют.


А по факту - это разница между OST-OT.

kdv
У Firebird автосвип срабатывает при OST - OIT >=sweep interval
У InterBase с какой-то там версии (вроде 7.1) автосвип срабатывает при OAT-OIT >=sweep interval.
OIT = Oldest Interesting Transaction = Oldest Transaction
OST = Oldest Snapshot
OAT = Oldest Active
Next = Next

Спасибо за подробную расшифровку.

kdv
p.s. ты на этом форуме уже 12 лет. За 12 лет мог бы ... почитать что-то.

Честно говоря, читал это много раз. Но из дырявой головы вылетает и путается то, с чем не сталкиваешься регулярно. Особенно, когда в разных местах написано по разному (впрочем, это мои проблемы).
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892383
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
YuRockестественно, это я узнал из лога.

А ты сделал попытку узнать что именно привело к зависанию транзакции, приведшей к этому?Я знаю прекрасно проблемы своего ПО и работаю над этим. В данном топике обсуждаются проблемы решения последствий плохой работы некачественного ПО.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892385
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
YuRockЕсли при запуске sweep будут висеть активные транзакции - он просто ничего не сделает?

почему же. свип будет вычищать мусор в интервале от OIT до OST. Он его всегда вычищает только в этом интервале. Другое дело, что застрявшая активная транзакция не дает этому интервалу расти. Соответственно, свип всегда сканирует всю БД, и вычищает то, что можно.
Уже тут не раз писали, что ФБ пишет в firebird.log о начале и конце свипа, сопровождая сообщение значениями маркеров транзакций. Из которых можно понять, было что-то "застрято" на момент старта (и окончания) свипа, или нет.
YuRockЕсли в процессе работы sweep будут запускаться транзакции, в т.ч. - пишущие, в т.ч. - снапшоты
ну будут, и что? Эти транзакции могут плодить НОВЫЕ версии, которые потом (когда-нибудь) станут новым мусором. Жизнь продолжается.
Ясно, спасибо. Короче, думаю, будет достаточно просто выгонять всех пользователей и запускать свип раз в сутки.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892389
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
грубо говоря, если бы работа sweep требовала отсутствия активных транзакции, то никто бы не стал делать auto sweep
Спасибо, я понял.
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892414
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockВ данном топике обсуждаются проблемы решения последствий плохой работы некачественного ПО.

А какие у тебя были последствия кроме невнятного "свип шёл 16 часов"? Ну шёл и шёл. Он
кому-то мешал, что ты начал паниковать и убивать сервер, рискуя целой базой?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бесконечный sweep sweep
    #39892449
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
А какие у тебя были последствия кроме невнятного "свип шёл 16 часов"? Ну шёл и шёл. Он
кому-то мешал, что ты начал паниковать и убивать сервер, рискуя целой базой?
Да нет конечно. Я так, ради прикола балуюсь.
...
Рейтинг: 0 / 0
25 сообщений из 82, страница 3 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Бесконечный sweep sweep
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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