|
Отрицательный age(relfrozenxid)
|
|||
---|---|---|---|
#18+
Всем доброго дня. Столкнулся с непонятной для меня проблемой, к сожалению я только поддерживаю проект поэтому в БД разбираюсь слабо. После восстановления из дампа БД в логах получил такие записи. WARNING: some databases have not been vacuumed in over 2 billion transactions DETAIL: You might have already suffered transaction-wraparound data loss. Суть проблемы как бы понимаю, каким то чудом "залез в будущее", но вот как решить проблему? Делал вручную VACUUM; увидел такое же предупреждение. SELECT datname, age(datfrozenxid) FROM pg_database; datname | age -----------+------------ postgres | -640205966 my_db | -640206005 template1 | -638438414 template0 | -638438414 SELECT relname, age(relfrozenxid) as xid_age FROM pg_class WHERE relkind = 'r'; показал, что все мои таблицы имеют нормальное значение, все сервисные тоже имеют отрицательное число. Перед тем как возвращать из дампа делал только pg_resetxlog (вероятно им как то и задел указав может ошибочные значения) Подскажите хотя бы куда копать? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2018, 13:37 |
|
Отрицательный age(relfrozenxid)
|
|||
---|---|---|---|
#18+
Vadim ValenzikПеред тем как возвращать из дампа делал только pg_resetxlog (вероятно им как то и задел указав может ошибочные значения) Зачем? Ну разумеется pg_resetxlog не имеет никакого отношения к сохранности данных. Наоборот он и нужен чтобы данные гарантированно ломать. Если не согласны - вы не понимаете, что такое WAL и теорию транзакционных СУБД. Копать в pg_dump и pg_restore в свежий, исправный кластер. И не делать больше странные вещи. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2018, 16:03 |
|
Отрицательный age(relfrozenxid)
|
|||
---|---|---|---|
#18+
https://www.postgresql.org/docs/current/static/app-pgresetwal.html manualAfter running this command, it should be possible to start the server, but bear in mind that the database might contain inconsistent data due to partially-committed transactions. You should immediately dump your data, run initdb, and reload. After reload, check for inconsistencies and repair as needed. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2018, 16:12 |
|
Отрицательный age(relfrozenxid)
|
|||
---|---|---|---|
#18+
Спасибо за ответ. pg_resetxlog я конечно не от хорошей жизни запустил. Сервис не поднимался, в логах было сказано, что виноват xlog. Решил долго не думая сделать ресет. Дело было слишком рано утром после субботы :). pg_resetwal появился намного позже этого сервера. В любом случае просмотрев логи сервера пришел к выводу, что проблема возникла из-за того, я не заметил, что время на сервере когда я восстанавливал из дампа базу было сильно левым в сторону прошлого (долгая и глупая история). Если опять задампить и восстановить базу - все проходит успешно. Еще раз спасибо, что отликнулись. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2018, 16:40 |
|
|
start [/forum/topic.php?fid=53&msg=39677362&tid=1995663]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 293ms |
total: | 429ms |
0 / 0 |