|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
sysdba22... всё работало как часы с марта прошлого года... а все потому что ты усомнился в FB и посмотрел в сторону IB ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 08:01 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Дрёму старого пня нарушил раздававшийся в лесу топор дровосека, под корой зашевелились воспоминания и даже, как это ни парадоксально, гипотезы... sysdba22одна из гипотез была, что при бэкапе/ресторе Освежилась статистика индексов и планы некоторых запросов вывернулись наизнанку с целью оптимизации, то есть, ускорения их выполнения. И даже вполне может быть, что эти запросы ускорились. Но потом sysdba22да, был на предприятии массовый update до этого. но такие апдейты там регулярно происходили и раньше, но не приводили к особым проблемам. по крайней мере таких "зависаний" вообще за 12 лет эксплуатации системы не было ни разу. Если апдейт был по индексированным полям, реальное содержимое этих индексов ушло от этой "свежей статистики" в неведомые дали, а статистика осталась. И планы некоторых из некоторых запросов стали из оптимальных неприемлемыми. Давным-давно, когда деревья были молодыми, а пень... мнэээ... дубом, перешёл он с IB4 Classic на IB5 Super. Зачем с 4 на 5 он уже не помнит, а на Super потому что в 5 Classic просто не было. И вскоре попал в обсуждаемую ситуацию. Ядра тогда были у орехов, а у сервера было 4 процессора. Которые дружно упирались в непрогнозируемый момент времени во что-то чрезвычайно с их точки зрения интересное и уходили на 100% в обсуждение между собой этого интересного практически навсегда. Вот так будущий пень и пришёл к Firebird 0.9 с чем-то - в поисках решения проблемы. И поставил, по совету друзей (С), то есть, kdv, опять Classic. Вскоре ситуация с зависом повторилась, но на одном процессоре. Выяснить что это был за запрос и почему он себя так ведёт было уже делом техники. После чего у пня и его отростков начался продолжительный период бурного явного планописательства. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 14:48 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Старый плюшевый мишкаИ планы некоторых из некоторых запросов стали из оптимальных неприемлемыми. Ну, чем хуже план - тем он "ближе к натуралу", скажем так. А при чтении/переборе сервер не только ведь проц грузить должен, а и диск. Понятно, что RAID, SSD, база в памяти и все дела, но прям чтоб на 100% ядро... Где-то какой-то косяк таки есть мне кажется, и надеюсь его поймают, если это так. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 18:20 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
01.02.2019 18:20, YuRock пишет: > Ну, чем хуже план - тем он "ближе к натуралу", скажем так. да щаззз! натуралом иногда спроворней. поелику "неправильные" индексные чтения обчас мешают зело сильно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 18:26 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Мимопроходящийнатуралом иногда спроворнейНу это конечно. Я о случае, когда нужен план с индексом, а срабатывает без него или с неоптимально выбранным. Так или иначе, чтения/запись должны грузить не только проц, а грузится только проц (раз 100%). Другое дело, что, может, ТС лукавит и на самом деле не 100, а 70-90... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 19:01 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
YuRockСтарый плюшевый мишкаИ планы некоторых из некоторых запросов стали из оптимальных неприемлемыми. Ну, чем хуже план - тем он "ближе к натуралу", скажем так. А при чтении/переборе сервер не только ведь проц грузить должен, а и диск. Понятно, что RAID, SSD, база в памяти и все дела, но прям чтоб на 100% ядро... Где-то какой-то косяк таки есть мне кажется, и надеюсь его поймают, если это так. Поставь острый натурный эксперимент. 1. На какой-нить табличке с несчастным мульёном записей сделай поле test int. 2. Проапдейть его, в смысле поле, в 0, целиком, всю таблицу. 3. В паре записей проапдейть на 1. 4. Сделай уникальный индекс (test, id). 5. Поселекть с where test=1. 6. Поселекть с where test+0=1. 7. Поселекть с where test=0. 8. Дальше у тебя будет два варианта: а) Воздать хвалу за оптимизацию оптимизатора, если он в п.7 индекс не подхватит (я не в курсе последних его улучшений). б) В противном случае - ахренеть. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 19:13 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
YuRockМимопроходящийнатуралом иногда спроворнейНу это конечно. Я о случае, когда нужен план с индексом, а срабатывает без него или с неоптимально выбранным. Так или иначе, чтения/запись должны грузить не только проц, а грузится только проц (раз 100%). Другое дело, что, может, ТС лукавит и на самом деле не 100, а 70-90... В случае вывернутого наизнанку относительно оптимального на существующих данных порядка перебора таблиц с использованием неподходящих индексов джойна чуть сложнее палки и верёвки 100 и будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2019, 19:16 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
ПВПа) Воздать хвалу за оптимизацию оптимизатора, если он в п.7 индекс не подхватит (я не в курсе последних его улучшений). гистограммы ещё не запилили ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2019, 17:14 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Симонов Денис, В четверке вроде еще, еще сильно заране, что-то такое обещали. Однако, руки что ли так и не дошли? Ежели чо, то я не злопыхаю, а чисто информации для. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2019, 20:08 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Проверка gfix показала следующее: Summary of validation errors Number of record level warnings : 8 Number of index page warnings : 1757 Number of pointer page warnings : 623 Number of database page warnings : 5859 Насколько это опасно? Вроде как бы warnings не ошибки ... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 16:20 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Mike_gs94, трудно сказать что тут имелось ввиду но скорее всего это orphan которые действительно не опасны, и вызваны нештатными обрывами подключений. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 16:28 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Mike_gs94Насколько это опасно? Вроде как бы warnings не ошибки ...Не опасно, потому и warnings. Кроме того, часть из них должна была быть исправлена. Если всё равно страшно - бекап\рестор ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 16:35 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
gfix с ключем -mend исправит такие страницы? пометит их как свободные? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 22:09 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
sysdba22gfix с ключем -mend исправит такие страницы?Какие-такие страницы ? sysdba22пометит их как свободные?Кого ? Зачем ? Налицо полное непонимание процесса и результатов валидации :( Я даже не знаю как тут объяснить, чтобы роман не писать... PS быстрый поиск не дал мне ни одного источника, который бы говорил про то, что mend исправляет страницы. Помойки я не проверял, есс-но. PPS я могу сказать что значит конкрентное сообщение в логе, но не просите меня вытаскивать инф-цию из вас ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 22:33 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
страницы, на которые при проверке gfix выдал предупреждение. выше писалось, что это возможно orphan страницы, возникшие в результате принудительного завершения процесса сервера. вот я и спрашиваю, если это так, то gfix с ключем -mend не должен ли пометить такие страницы как свободные, чтобы при последующих запусках gfix уже никаких предупреждений не выдавалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 22:55 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
sysdba22страницы, на которые при проверке gfix выдал предупреждение.С какой стати их помечать, как свободные ??? Хотите кучу данных потерять ? sysdba22выше писалось, что это возможно orphan страницыКем писалось ? У вас в логе про каждую ошибку явно написано - что это такое. sysdba22gfix с ключем -mend не должен ли пометить такие страницы-mend никогда не помечает никакие страницы , никак. Я об этом выше написал. PS orphan'ы автоматически исправляются валидацией, но только если нет никаких других ошибок. Забудьте про mend, он тут вообще не при чём. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2019, 23:54 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
hvladsysdba22страницы, на которые при проверке gfix выдал предупреждение.С какой стати их помечать, как свободные ??? Хотите кучу данных потерять ? ... -mend никогда не помечает никакие страницы , никак. Я об этом выше написал. тогда надо или подробнее разъяснить это на странице официальной документации или вообще оттуда убрать. Потому что сейчас там написано ровно то, что я спросил: авторWhen a database is validated the following checks are made and corrected by default: Orphan pages are returned to free space. This updates the database. Pages that have been misallocated are reported. Corrupt data structures are reported. https://www.firebirdsql.org/pdfmanual/html/gfix-dbverify.html ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 11:41 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
И где в процитированном выше слово mend ?? Может надо полностью читать текст ? Recover a Corrupt Database The option required to fix a corrupted database is the gfix -m[end] command. However, it cannot fix all problems and may result in a loss of data. It all depends on the level of corruption detected. The command is: gfix -m[end] database_name This causes the corruptions in data records to be ignored. While this sounds like a good thing, it is not. Subsequent database actions (such as taking a backup) will not include the corrupted records, leading to data loss. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 11:48 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
hvladPS orphan'ы автоматически исправляются валидацией, но только если нет никаких других ошибок.И вот когда я писал здесь об этом первый раз: 1061832 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 15:49 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Спасибо. Будем знать. Получается, что безопаснее всегда если gfix выявил ошибки делать бэкап/рестор, а не gifx -mend, а затем уже бэкап/рестор. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 18:38 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
sysdba22Спасибо. Будем знать. Получается, что безопаснее всегда если gfix выявил ошибки делать бэкап/рестор, а не gifx -mend, а затем уже бэкап/рестор. Скажем так: mend нужно делать только тогда и только тогда, когда не удалось сделать бакап. Именно это отложилось у меня в мозгу лет двадцать назад. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 19:38 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
sysdba22Получается, что безопаснее всегда если gfix выявил ошибки делать бэкап/рестор, а не gifx -mend, а затем уже бэкап/рестор.Я не понимаю - откуда такие выводы ? Явно же сказано - warnings не влияют на работу БД. Потому они и warnings. Бекап\рестор сделать можно, но где требование всегда его делать ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 19:52 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
pastormend нужно делать только тогда и только тогда, когда не удалось сделать бакапТут соглашусь. Но доп. файловая копия БД до mend - тоже не помешает. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2019, 19:53 |
|
Срочно нужна помощь
|
|||
---|---|---|---|
#18+
Ну, есть или нет ошибки при бэкапе - для этого можно и нужно заглядывать в лог планового бэкапа. И если бэкап перестал формироваться, плюс жалобы пользователей, то есть повод начинать прохождение квеста (в монопольном режиме, разумеется) "проверка-менд-бэкап-рестор-подмена базы-анализ на потери данных" ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2019, 08:39 |
|
|
start [/forum/topic.php?fid=40&msg=39769124&tid=1560820]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 294ms |
total: | 427ms |
0 / 0 |