expected 4 encountered 5

Ремонт и восстановление баз данных InterBase, Firebird, Yaffil

Модераторы: kdv, Alexey Kovyazin

Ответить
AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

expected 4 encountered 5

Сообщение AntonYa » 08 авг 2008, 11:04

При backup БД возникла ошибка
Page 14436567 wrong type (expected 4 encountered 5)
Pointer page (sequence 0) inconsistent in table TABLE1 (566)
Сама таблица пустая, зависимостей у нее нет. Сделать drop не удалось - та же ошибка. Попытка починить gfix -mend ничего не дала, чинил по инструкции.

БД под Linux, Firebird 1.5.3

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

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 08 авг 2008, 11:48

Или обращайся в ремонт, или в datapump

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 08 авг 2008, 11:48

купить IBFirstAid. или к нам в ремонт.

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 12:33

kdv писал(а):купить IBFirstAid. или к нам в ремонт.
Вопрос - в связи с чем могла возникнуть данная ситуация? Проблем с оборудованием и питанием сервера нет и не было.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 08 авг 2008, 13:13

по ошибке я подозреваю, что каким-то образом в PIP данная страница помечена как занятая, в то время как там остался какой-то "мусор" (вместо страницы данных страница индекса).

давно бы уже проверил диагностом базу - это бесплатно, да и сам в лог можешь глянуть.
http://www.ib-aid.com/download/IBFirstA ... tician.exe


кстати, размер страницы у базы какой?

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 13:46

kdv писал(а):по ошибке я подозреваю, что каким-то образом в PIP данная страница помечена как занятая, в то время как там остался какой-то "мусор" (вместо страницы данных страница индекса).

давно бы уже проверил диагностом базу - это бесплатно, да и сам в лог можешь глянуть.
http://www.ib-aid.com/download/IBFirstA ... tician.exe


кстати, размер страницы у базы какой?
IBFrirsAID скачал, но он под Win, а база лежит на Linux и весит 200 гиг - тянуть по сети очень долго, но видимо все же придется...
Размер страницы 4096.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 08 авг 2008, 14:21

AntonYa писал(а):база лежит на Linux и весит 200 гиг
Ты в курсе про ограничение 36гиг на таблицу в старых ОДС ?

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 14:29

hvlad писал(а):
AntonYa писал(а):база лежит на Linux и весит 200 гиг
Ты в курсе про ограничение 36гиг на таблицу в старых ОДС ?
Знаю, таблица буферная - из нее данные после обработки удаляются. Размеры таблиц проверяли - все гуд.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 08 авг 2008, 14:48

AntonYa писал(а):
hvlad писал(а):
AntonYa писал(а):база лежит на Linux и весит 200 гиг
Ты в курсе про ограничение 36гиг на таблицу в старых ОДС ?
Знаю, таблица буферная - из нее данные после обработки удаляются. Размеры таблиц проверяли - все гуд.
А других таблиц у нас не водится ?

PS можно попробовать в копии БД удалить запись о 0-ой pointer page для 566-ой таблицы из rdb$pages. После чего - реконнект.

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 14:55

hvlad писал(а):А других таблиц у нас не водится ?

PS можно попробовать в копии БД удалить запись о 0-ой pointer page для 566-ой таблицы из rdb$pages. После чего - реконнект.
Таблицы проверяли все, по поводу системных таблиц - как раз сейчас планируем что-то подобное делать - хотели удалить строку с неверной страницей.

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 15:54

AntonYa писал(а):
hvlad писал(а):А других таблиц у нас не водится ?

PS можно попробовать в копии БД удалить запись о 0-ой pointer page для 566-ой таблицы из rdb$pages. После чего - реконнект.
Удалил, при попытке select из таблицы дает ошибку
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
database file appears corrupt ().
wrong page type.
page 0 is of wrong type (expected 4, found 1).
Drop table делать все так же не дает. Но захожу в БД нормально.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 08 авг 2008, 17:01

AntonYa писал(а):
hvlad писал(а):А других таблиц у нас не водится ?

PS можно попробовать в копии БД удалить запись о 0-ой pointer page для 566-ой таблицы из rdb$pages. После чего - реконнект.
Удалил, при попытке select из таблицы дает ошибку
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
database file appears corrupt ().
wrong page type.
page 0 is of wrong type (expected 4, found 1).
Drop table делать все так же не дает. Но захожу в БД нормально.
page 0 is of wrong type (expected 4, found 1) чётко говорит, что не удалил, а записал туда 0

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 17:21

Извините за вопрос, но как его тогда удалить?

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 08 авг 2008, 17:48

AntonYa писал(а):Извините за вопрос, но как его тогда удалить?
Если не получается сделать DELETE (в какой-то версии ФБ это запретили, не помню точно - в какой), то обращаться в ремонт.
Или изучить ODS и выставить флаг (rhd_deleted) в ручную.

Но. Я не гарантирую, что после этого не возникнет других ошибок.

AntonYa
Сообщения: 28
Зарегистрирован: 26 фев 2008, 10:35

Сообщение AntonYa » 08 авг 2008, 18:04

hvlad писал(а):
AntonYa писал(а):Извините за вопрос, но как его тогда удалить?
Если не получается сделать DELETE (в какой-то версии ФБ это запретили, не помню точно - в какой), то обращаться в ремонт.
Или изучить ODS и выставить флаг (rhd_deleted) в ручную.

Но. Я не гарантирую, что после этого не возникнет других ошибок.
Понятно, спасибо.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 08 авг 2008, 20:19

на всякий случай. в ремонт с таким размером БД - только через удаленное администрирование, и только после 12-го августа.
и впрочем, все равно для ремонта базу придется переносить на винды, хотя бы в виде файла. нет у нас средств для ремонта баз, работающих под Линуксом (и думаю, если даже и будут, то очень не скоро).

Ответить