powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
8 сообщений из 8, страница 1 из 1
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38387102
Aleximos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер!
Возник вопрос: существует ли такая функция или процедура в Sybase ASA, которая позволит получить из адреса страницы (вида "0x0:0x7b097b") ID или название объекта, данные которого хранятся в данной странице?
Заранее спасибо за помощь в поиске.
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38387136
Aleximos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос возник из-за периодически возникающей ошибки, из-за которой база самопроизвольно опускается:
Код: sql
1.
2.
SQLANYs_SbComm: *** ERROR *** Assertion failed: 201501 (10.0.1.4310)
Page 0x0:0x7ba394 for requested record not a table page


Хотелось бы понять какой из объектов "испортился".
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38387167
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проще всего будет прогнать dbunload на всю базу - это вытащит все данные (и объекты) в текстовые файлы.
Если ошибка действительно в странице данных (а не в индексе или кеше) то dbunload упадет на соответствующей таблице.

Ну а чтобы избежать дальнейших проблем:
После dbunload в текущем каталоге будет лежать reload.sql. Прогони его на свежесозданную (dbinit) базу. Получишь нормальную БД точно без каких-либо внутренних ошибок. Потом просто подменишь битую базу новенькой и все.
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38387279
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, White Owl, а создание базы с checksums on page, кажется так, может спасти от такой беды?
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38387293
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey OrlovКстати, White Owl, а создание базы с checksums on page, кажется так, может спасти от такой беды?Каким это образом? По моему, это весьма бесполезная опция (могу быть и не прав конечно).
Наличие проверочной суммы на странице позволит поддерживать уверенность что "что мы прочитали со страницы именно то, что туда записывали". А если по какой-либо причине на страницу записалась чушь и мы для этой чуши посчитали сумму - чушь не перестанет быть чушью.
В случае как у Aleximos, если у нас по какой-то причине в индексе появилась ссылка на не существующую страницу - эта ссылка никуда не денется и магически не исправится (и страница тоже не появится).
Как мне кажется от чего может помочь "checksums on page" опция - это потребовать повторного чтения страницы со сбоящего жесткого диска. Типа мы знаем что этот диск может выдать не то что на него записали, поэтому будем читать тщательнее... Но в этом случае по моему проще и надежнее просто заменить диск.
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38390004
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlSergey OrlovКстати, White Owl, а создание базы с checksums on page, кажется так, может спасти от такой беды?Каким это образом? По моему, это весьма бесполезная опция (могу быть и не прав конечно).
Наличие проверочной суммы на странице позволит поддерживать уверенность что "что мы прочитали со страницы именно то, что туда записывали".
Как мне кажется от чего может помочь "checksums on page" опция - это потребовать повторного чтения страницы со сбоящего жесткого диска. Типа мы знаем что этот диск может выдать не то что на него записали, поэтому будем читать тщательнее...
Во первы на диске к каждому сектору хардварно записывается хеш и так-же проверяется при чтении. Это делает контролёр диска. Смысла дублировать функционал нету. Тем не мене функция на мой взгляд очень полезная и на сколько я помню, разработчики постгресса решили включить её в релиз-план. Используется функция в другом контексте. Страница может занимать несколько секторов, и при непредвиденном сбое может получится так-что заголовок страницы был обновлён а хвост(остаток) -нет. При этом номер последней транзакций TLS в заголовке говорит о том что страница была сброшена на диск, и recovery не нужен, а проверка хэша позволяет избежать подобных недоразумений.
...
Рейтинг: 0 / 0
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38390037
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronИспользуется функция в другом контексте. Страница может занимать несколько секторов, и при непредвиденном сбое может получится так-что заголовок страницы был обновлён а хвост(остаток) -нет.мммм... да, про несовпадение размеров страницы и сектора я забыл. Действительно в этом случае надо либо маркировать каждый сектор датой обновления, либо чексумма в последнем секторе.
Хотя это все равно не тот случай что у ТС. Если бы у него произошел такой сбой он бы получил чушь в хвосте одной (нескольких) записей какой-либо таблицы, а сервер отследить проблему (при отсутствии чексумм) не смог бы.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
    #38786361
Компостеров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UP !

Как узнать таблицу по номеру страницы ?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Процедура поиска объекта по номер страницы (page) Sybase ASA 10.0.1.4310
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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