powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / разница между oncheck -ci и oncheck -cI
26 сообщений из 26, показаны все 2 страниц
разница между oncheck -ci и oncheck -cI
    #38715642
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Кто может пояснить разницу в сабже.
cI показывает ошибки на фрагментированной таблице у которой нет rowid.
ci на эту же таблицу говорит, что все нормально.

Informix 7.31 FD10
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38716338
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr, "The oncheck -cI command also checks that the key value tied to a rowid in an index is the same as the key value in the row."
Расширенный вольный перевод:
"Команда oncheck -cI помимо того что делает -ci, также проверяет, что значение ключа, записанное в индексе и привязанное к перечню ROWID, совпадает со значениями ключей собственно в строках с этими ROWID."
Несмотря нато что, у фрагментированной таблиц "нет ROWID", индекс содержит ссылки на строки в фрагментированных частях (пусть они и не называются ROWID). Т.е. эти ссылки таки поломаны...
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38718407
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Спасибо,
а что Вы думаете о прогонах oncheck -cI на secondary сервере?

IDS7.31 FD10
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38718695
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr, уже ничего не думаю. У меня давно не было практики администрирования Informix с репликацией.
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38719191
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

на secondary ловятся ошибки.
Есть мнение что надо останавливать репликацию, но этот вариант мне лично не нравится.
Тестирую на копии восстановленной через ontape
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38719425
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cprАнатоЛой,

на secondary ловятся ошибки.

В ontape -cI? Какие?

cprЕсть мнение что надо останавливать репликацию, но этот вариант мне лично не нравится.

Разобравшись, что представляет из себя ошибка модно "легко" проверить, проявляется ли найденная ошибка на бизнес-приложении.
Например, если ошибка о несоответствии ключа и ROWID, запрос по значению ключа на primary и на secondary даст разные результаты/

cprТестирую на копии восстановленной через ontape
Тестируете что? ontape -cI?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720308
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

На вторичном сервере на рабочей системе oncheck -cI предлагает пересоздать индекс.

Тестируем копию системы, которая восстановлена с помощью ontape.

про ontape -cI ничего не писал
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720330
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cprАнатоЛой,
На вторичном сервере на рабочей системе oncheck -cI предлагает пересоздать индекс.

Это я так и понял раньше.

cprТестируем копию системы, которая восстановлена с помощью ontape.
про ontape -cI ничего не писал

1. "Копию системы" - это тоже пара?
2. Тестируете на предмет чего? Полный цикл для продукта? Или попытка воссоздать ситуацию с поломанным индексом на вторичном сервере?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720412
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Копия системы это похожий сервер с аналогичной дисковой подсистемой.
экземпляр восстанавливаем из архива системы, заподозренной в рзвале индексов
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720436
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или вы не выдаёте важную информацию для понимания, или логика действий мне непонятна.

На входе: первичный и вторичный сервер.
На первичном проблем нет, на вторичном битый индекс.

Процесс тестирования:
вы создаёте копию первичного, правда на железе, похожем на вторичный.
копию создаётё из архива.

Что таким образом можно проверить:
а) Нет ли битых индексов уже в архиве? (на первичном битых сейчас нет, так что скорее всего с архивом всё в порядке, хотя и вероятна ситуация, когда на первичном индексы пересоздавались после архивирования, и потому уже не битые)
б) Нет ли проблем с партией железа?

Имхо: тестирование для поиска причин выглядит скудно.
Бинго: Bkb вы просто проверяете, не будет ли сбоев при попытке промышленного восстановления secondary?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720595
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Последовательность такова

1. oncheck показывает на вторичном ошибки.
2. На вторичном идут активные изменения данных, остановить репликацию возможности нет. Остановить первичный сервер тоже нельзя.
3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере.
4. Проверяю наличие ошибок на восстановленном сервере.
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720792
victor16
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprНа вторичном идут активные изменения данных

У вас вторичка работает в режиме read/write или логи накатываются интенсивно ?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38720953
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
victor16,

там в самом верху написаон, что речь идет о IDS 7.31
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38721186
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr, сформулируйте чётко цели ваших действий.
Варианты:
1. Выяснить, являются ли ошибки, на которые указывает oncheck -cI на вторичном сервере, проблемой (вдруг это баг oncheck -cI на вторичных серверах).

2. Если проблемы есть, необходимо избавиться от проблемы текущей (перестроить индекс, например)

3. Попоытаться найти и устранить причину возникноения проблемы (почему индекс поломался)


> Последовательность такова
> 1. oncheck показывает на вторичном ошибки.
На первичном же не показывает, правильно?

> 2. На вторичном идут активные изменения данных,
??? В смысле, активное использование данных?

> остановить репликацию возможности нет.
Завести пользователей вторичного на первичный точно никак нельзя?

> Остановить первичный сервер тоже нельзя.
Для чего вам это? Чтобы пересоздать индекс на первичном (и, соответственно, индекс пересоздатся на вторичном)?

> 3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере.
Сам архив 0-го уровня вы же снимали с первичного, не так ли?

> 4. Проверяю наличие ошибок на восстановленном сервере.
Не понимаю, что вам даст результат.
Что будет, если ошибок на восстановленном вы не найдёте?
И что будет, если ошибки не восстановленном вы найдёте?

П.С.: Такое ощущение, что у вас БОЛЬШАЯ запара, и вы суетитесь, вместо спокойного, но эффективного анализа ситуации....
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38721384
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

>cpr, сформулируйте чётко цели ваших действий.
Выяснить есть ли разрушения индексов. Если есть, то индексы пересоздать.

>> Последовательность такова
>> 1. oncheck показывает на вторичном ошибки.
>На первичном же не показывает, правильно?
На первичном нет возможности запустить oncheck т.к. система постоянно в работе. Время возможного даунтайма посредине рабочей недели значительно меньше времени, требуемого для oncheck -cI. Отсюда и все заморочки.

>> 2. На вторичном идут активные изменения данных,
>??? В смысле, активное использование данных?
Я конечно выразился весьма криво. Возможно здесь все и запутались. Активное изменение данных идет на первичке, а на вторичке данные естественно также меняются вследствии синхронной репликации.

>> остановить репликацию возможности нет.
>Завести пользователей вторичного на первичный точно никак нельзя?
Вторичный сервер read-only и получает на себя строго ограниченный набор запросов на чтение данных. Мое высказывание было сказано к тому, что я не могу себе позволить остановить HADR и чекнуть индексы пока данные на вторичке неизменны.

>> Остановить первичный сервер тоже нельзя.
>Для чего вам это? Чтобы пересоздать индекс на первичном (и, соответственно, индекс пересоздатся на вторичном)?
Объемы слишком большие. У меня в режиме HADR только удаление больших индексов занимает очень долгое время. Для переиндексации больших таблиц HADR разбираем. Вся процедура занимает более суток.

>> 3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере.
>Сам архив 0-го уровня вы же снимали с первичного, не так ли?
Ну хоть в чем то нам удалось друг друга понять. С secondary сервера снять архив нулевого уровня физически нельзя.
Архив уровня ноль делается на первичном сервере в период наименьшей нагрузки.

>> 4. Проверяю наличие ошибок на восстановленном сервере.
>Не понимаю, что вам даст результат.
>Что будет, если ошибок на восстановленном вы не найдёте?
В этом весь вопрос. На текущий момент я буду считать что ошибок в индексах нет. Т.к. похоже , что ошибки показанные oncheck-ом на вторичном сервере при работающем HADR ненастоящие.

>И что будет, если ошибки не восстановленном вы найдёте?
Возрадуюсь.

>П.С.: Такое ощущение, что у вас БОЛЬШАЯ запара, и вы суетитесь, вместо спокойного, но эффективного анализа ситуации....
Нет, все как обычно, каков вопрос - таков ответ. У нас как в том анекдоте:
- приборы
- 40
...
- чего 40 ?
- а чего приборы?

Вопрос стоит так :
Исходные данные -
1. IDS 7.31 , HADR
2. Объем БД требует на выполнения oncheck -cID -n например двое суток.
3. Возможное время останова системы в сутки не более нескольких часов.

Вопрос - как хотя бы раз в неделю делать проверку индексов?
Примечание: говорим исключительно о возможностях собственно Informix 7.31.
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38721464
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cprНа первичном нет возможности запустить oncheck т.к. система постоянно в работе.

Неочевиден вывод. Попробуем разобрать.

cprВремя даунтайма посредине рабочей недели значительно меньше времени, требуемого для oncheck -cI.
...
я не могу себе позволить остановить HADR и чекнуть индексы пока данные на вторичке неизменны.

Просматривается ваше предположение: проверка индексов требует эксклюзивного доступа проверяющего.
Оно не совсем верно.

cprИсходные данные -
1. IDS 7.31 , HADR
2. Объем БД требует на выполнения oncheck -cID -n например двое суток.
3. Возможное время останова системы в сутки не более нескольких часов.

Вопрос - как хотя бы раз в неделю делать проверку индексов?
Примечание: говорим исключительно о возможностях собственно Informix 7.31.


Есть вариант не 100% проверки:
1. Убедиться, что таблицы проверяемых индексов имеют уровень блокировки ROW, а не PAGE.
2. Для проверки индексов запускать oncheck на первичном сервере с параметрами -cI w .
Такая проверка:
+ не требует downtime, поскольку не накладывает эксклюзивную блокировку на таблицу;
+ не ДОЛЖНА привести к ошибкам работы пользователей (на самом деле зависит от степени долбанутости приложения);
- даст не 100% проверку данных - по тем страницам индекса , которые во время проверки будут параллельно изменены пользователями, данные проверяться не будут.
Для повышения качества проверки можно запустить проверку с разной частотой для разных таблиц и индексов (правда, это требует анализ частоты обновления этих таблиц и индексов).

П.С.:
"When you use the -w option, the oncheck utility places an intent shared (IS)
lock on the table. An IS lock allows other users to read and update the table
during the execution of the oncheck utility on an index.
The IS lock also
prevents DDL activity (such as a DROP INDEX or DROP TABLE statements)
during the execution of oncheck."

"If a user updates, inserts, or deletes column values that are key values in the
index that oncheck is checking, the user’s changes still take effect. If oncheck
encounters an index page that the user updated, it ignores the updated page
.
If you want 100-percent assurance that the index is good, do not use the -w
option of oncheck"

(с) Performance Guide IDS 7.3
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38722205
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Спасибо, попробую.
В субботу и воскресенье нагрузка на систему значительно снижается. Если oncheck -cIw не будет мешать работать оставшимся пользователям то шансы есть.
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38723832
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
мда
уже более двух суток чекается на копии, которая без нагрузки совсем и еще не закончилось.
Надежды на проверку с опцией w на продуктивной системе стремительно тают
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38723857
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr, что у вас за объемы данных?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38724171
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
запрос в sysmaster

select round(sum(chksize*2)/(1024*1024)) as size_gb,
round(sum(nfree*2)/(1024*1024)) as free_gb
from syschunks


дает следущее

size_gb free_gb

2174 1080
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38724287
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr, oncheck вы натравливаете на всю базу.
И почему решили в приципе запускать oncheck?
Потому что рук. администратора рекомендует делать это регулярно или есть ещё предпосылки?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38724773
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Причина проверки - падение сервера по причине старого доброго бага mtex.c
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38724779
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

Ну и рекомендации регулярной проверки
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38726775
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из вариантов, похоже:
1. забить :(.
2. смена версии IDS.
2.0. Проверить производительность oncheck на новой версии
2.1. получить поддержку (и обновления) - для борьбы с первопричинами разрушений - раз
2.2. получить больше возможностей бороться с последствиями - (ONLINE DROP/CREATE INDEX) - два
"+" - "+" прочие плюшки
"- " - "+" геморрои перехода.

П.С.: И судя по другим постам, вы пришли к такому же выводу?
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38727796
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АнатоЛой,

В общем да. Но забивать не наш метод.
Будем переодически чекать на копии.
А переход к сожалению процесс не быстрый.
...
Рейтинг: 0 / 0
разница между oncheck -ci и oncheck -cI
    #38860940
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
В справочнике администратора 12.10 на странице 9-3 черным по белому написано

"Утилита oncheck возвращает недостоверные результаты при запуске на вторичных
серверах в кластере высокой доступности."
...
Рейтинг: 0 / 0
26 сообщений из 26, показаны все 2 страниц
Форумы / Informix [игнор отключен] [закрыт для гостей] / разница между oncheck -ci и oncheck -cI
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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