Удаление объекта в NDS

Обсуждение технических вопросов по продуктам Novell

Сообщение AlexZ » 29 май 2003, 21:42

Так как DSREPAIR никаких ошибок не нашел, я запустил DSTRACE:

SET DSTRACE = OFF
SET DSTRACE = +S
SET DSTRACE = +PART
SET TTF = ON
SET DSTRACE = *R
SET DSTRACE = *H
SET TTF = OFF

В результате в DSTRACE.DBG сформировалось сообщение:

*** DSALowLevelSplit SplitPartition returned err -659 ***
3ED66892:625:FB051000 WARNING: Create Partition is having trouble with this server!!! error = -659
3ED66892:625:FB051000 SYNC: SetCntlState failed with error -647
3ED66892:626:FB051000 SYNC: SkulkPartition for <[Root]> failed, error = -647
3ED66892:626:FB051000 SYNC: End sync of partition [Root] ERROR: -647

Не в этих ли ошибках причина проблем?
Error -659 - это TIME_NOT_SYNCHRONIZED, но время на всех серверах засинхронизировано... , а -647 это NOT_ROOT_PARTITION.
Как же все это понимать? :?: :cry:
AlexZ
 
Сообщения: 27
Зарегистрирован: 29 апр 2003, 17:15
Откуда: Москва

Сообщение Лебедев Виктор » 30 май 2003, 11:47

AlexZ писал(а): Подскажите, пожалуйста, применима ли процедура, изложенная в TID10059434 в случае отсутствия реплики на оставшимся без лицензий сервере и при наличии ошибок в мастер-реплике.


Нет.

Константин Ошмян писал(а): ... необходимым условием для этого, опять же, является здоровый NDS (т.е. в любом случае - сначала надо разобраться с NDS-ом, уже потом - разбираться с лицензиями, если проблемы с ними останутся).


И делать это надо на мастер-реплике.

AlexZ писал(а):Так как DSREPAIR никаких ошибок не нашел, я запустил DSTRACE:

SET DSTRACE = OFF
SET DSTRACE = +S
SET DSTRACE = +PART
SET TTF = ON
SET DSTRACE = *R
SET DSTRACE = *H
SET TTF = OFF

В результате в DSTRACE.DBG сформировалось сообщение:

*** DSALowLevelSplit SplitPartition returned err -659 ***
3ED66892:625:FB051000 WARNING: Create Partition is having trouble with this server!!! error = -659
3ED66892:625:FB051000 SYNC: SetCntlState failed with error -647
3ED66892:626:FB051000 SYNC: SkulkPartition for <[Root]> failed, error = -647
3ED66892:626:FB051000 SYNC: End sync of partition [Root] ERROR: -647

Не в этих ли ошибках причина проблем?
Error -659 - это TIME_NOT_SYNCHRONIZED, но время на всех серверах засинхронизировано... , а -647 это NOT_ROOT_PARTITION.
Как же все это понимать? :?: :cry:


IMHO, значит еще есть ссылки на фантомные объекты.
Лебедев Виктор
 
Сообщения: 133
Зарегистрирован: 05 июн 2002, 09:03
Откуда: Пермь

Сообщение Константин Ошмян » 30 май 2003, 13:46

AlexZ писал(а):
Константин Ошмян писал(а):Что показывают при просмотре кольца реплик DSREPAIR на каждом из серверов?
DSREPAIR -A -> REPAIR LOCAL DATABASE -> check local reference = Yes, остальные = No был запущен на сервере А ( мастер - реплика) и В (реплика отсутствует). Ошибок не обнаружено ни на одном из серверов.
то, что ошибок не обнаружено - это хорошо, но это не совсем кольцо реплик. Я имел в виду LOAD DSREPAIR -> Advanced Options -> Replica and Partition Operations -> выбираем [Root] -> View Replica Ring. Должно быть видно, что данный сервер "думает" по поводу того, где размещены реплики NDS данного раздела - на каких серверах и в каком состоянии. Т.е. если реплика только на сервере А - то она должны быть видна с типом "Master" и состоянием "On".
AlexZ писал(а):при попытке добавить реплику получаем сообщение: "Master replica is not on for the selected partition".
Похоже на то, что она всё-таки не в состоянии "On".
AlexZ писал(а):Не в этих ли ошибках причина проблем?
Error -659 - это TIME_NOT_SYNCHRONIZED, но время на всех серверах засинхронизировано... , а -647 это NOT_ROOT_PARTITION.
Как же все это понимать?
Несмотря ни на что, ещё раз убедиться в синхронизации времени (команда TIME на каждом из серверов должна говорить "Time is synchronized"). По поводу второго сообщения - я нашёл лишь TID10061610 (-647 0xFFFFFD79 = ERR_NOT_ROOT_PARTITION ), в котором рекомендуется на втором сервере (где нет реплик) их ещё раз их убить через DSREPAIR -XK2, а на первом (где мастер-реплика) - почистить кольцо реплик (как я указал выше), после чего мастер-реплика должна, наконец, перейти в состояние "On".
Аватара пользователя
Константин Ошмян
 
Сообщения: 961
Зарегистрирован: 13 авг 2002, 21:36
Откуда: Рига

Сообщение AlexZ » 30 май 2003, 18:06

[/quote="Константин Ошмян"]
Я имел в виду LOAD DSREPAIR -> Advanced Options -> Replica and Partition Operations -> выбираем [Root] -> View Replica Ring. Должно быть видно, что данный сервер "думает" по поводу того, где размещены реплики NDS данного раздела - на каких серверах и в каком состоянии. [/quote]

DSREPAIR показал, что на сервере реплика раздела Root, тип реплики -Master, и она в состоянии SplitState 0.

[/quote="Константин Ошмян"]
Несмотря ни на что, ещё раз убедиться в синхронизации времени (команда TIME на каждом из серверов должна говорить "Time is synchronized").
[/quote]

Да, время синхронизировано на всех серверах

[/quote="Константин Ошмян"]
По поводу второго сообщения - я нашёл лишь TID10061610 (-647 0xFFFFFD79 = ERR_NOT_ROOT_PARTITION ), в котором рекомендуется на втором сервере (где нет реплик) их ещё раз их убить через DSREPAIR -XK2, а на первом (где мастер-реплика) - почистить кольцо реплик (как я указал выше), после чего мастер-реплика должна, наконец, перейти в состояние "On".[/quote]

Все реплики убиты и в кольце нет лишних серверов, тем не менее мастер - реплика по-прежнему в состоянии "not On".

Обнаружил, что на одном из вспомогательных серверов (NetWare 4.10, DS 4.63) реплика сохранилась и ошибок в ней нет. По крайней мере, DSTRACE и DSREPAIR вышеописанными способами их не показали. Этот сервер (назовем его D) был выведен из кольца реплик перед удалением раздела с сервера В и изменения в его базу не вносились. Наверное проще поднять версию NDS до 5.18, сделать реплику на D главной и с нее восстановить реплики на остальных серверах.
AlexZ
 
Сообщения: 27
Зарегистрирован: 29 апр 2003, 17:15
Откуда: Москва

Сообщение Константин Ошмян » 30 май 2003, 20:02

AlexZ писал(а):DSREPAIR показал, что на сервере реплика раздела Root, тип реплики -Master, и она в состоянии SplitState 0.
Я понял, что речь идёт о сервере А (который 5.1)?
Насколько я понимаю, это означает, что администратор пытался дать команду разбить раздел (partition) NDS на два, и сервер-держатель мастер-реплики скомандовал всем серверам, о которых знал, что на них есть реплика текущего раздела: "Приготовиться!" - но не от всех получил ответное подтверждение (иначе бы перешёл в Split State 1). Отсюда следует, что сервер, ответа от кого он ждёт, остался либо в его кольце реплик, либо как объект в дереве NDS. Кстати, Unattended Full Repair тоже проходит без ошибок?
AlexZ писал(а):Обнаружил, что на одном из вспомогательных серверов (NetWare 4.10, DS 4.63) реплика сохранилась и ошибок в ней нет.
Чего только не узнаешь через неделю обсуждения! 8) И какого же типа эта реплика? Если Subordinate Reference - то это мало поможет... Если какого-то другого - то почему её нет в кольце реплик сервера А? И почему там DS только 4.63?
AlexZ писал(а):Этот сервер (назовем его D) был выведен из кольца реплик перед удалением раздела с сервера В и изменения в его базу не вносились. Наверное проще поднять версию NDS до 5.18, сделать реплику на D главной и с нее восстановить реплики на остальных серверах.
Каким образом выведен? Если корректно выведен - то реальных реплик на нём быть не должно, с чего восстанавливать-то?

Давайте, всё же, определимся:
1) сколько всего сейчас серверов в дереве?
2) что на каждом из них показывает DSREPAIR при просмотре кольца реплик (какие реплики, на каких серверах и в каком состоянии)?
3) вылезают ли ошибки на каждом из серверов при Unattended Full Repair (если да - то какие)?
4) на сколько разделов (partitions) поделено дерево? Вы упоминали про "неизвестный объект, который воспринимается как раздел" - он ещё есть или его уже нет?
5) что показывает NDS Manager при просмотре в режиме "Partitions and Servers", если выбрать из меню "View" -> "Set Context" -> [Root]? Какие при этом в левой части видны разделы (вверху) и серверы (внизу)? Для каждого из разделов (при "наступании" на него) - что видно в правом верхнем окне (на каких серверах реплики, какого типа, в каком состоянии)?
6) при "наступании" мышью на корневой раздел (в левом верхнем окне NDS Manager) и нажатии правой кнопки мыши - доступна ли опция "Abort Operation"?
Аватара пользователя
Константин Ошмян
 
Сообщения: 961
Зарегистрирован: 13 авг 2002, 21:36
Откуда: Рига

Сообщение Андрей Тр. aka RH » 31 май 2003, 06:11

Может, проще сделать несколько скриншотов в ключевых местах ? А то так можно долго играть в глухие телефончики.
Аватара пользователя
Андрей Тр. aka RH
 
Сообщения: 3937
Зарегистрирован: 18 июн 2002, 11:27

Сообщение AlexZ » 21 июн 2003, 15:04

Уважаемые коллеги!
Большое спасибо за участие в обсуждении темы, проблема решена, причем, главным образом, благодаря этому форуму и TID' ам Novella.
Вышеперечисленые ошибки (-647 и -659) удалось вылечить путем удаления всех неизвестных объектов из дерева, затем из дерева были удалены все серверы кроме носителя реплики, проведена реконструкция меток времени и объявлена новая эпоха. (Repair time stamps and declare new epoch). Две последние процедуры прошли успешно не сразу, а где-то с 8-10 попытки. После их завершения реплика перешла в состояние "On" и появилась возможность восстановить в дереве ранее удаленные серверы.
После реконструкции меток времени система "забыла" все пароли пользователей, а из-за удаления серверов из дерева разрушились очереди печати; пароли и очереди восстановили вручную.
AlexZ
 
Сообщения: 27
Зарегистрирован: 29 апр 2003, 17:15
Откуда: Москва

Поздравляю!

Сообщение Константин Ошмян » 21 июн 2003, 19:21

Ну что ж, поздравим себя! :lol: :beer:
Аватара пользователя
Константин Ошмян
 
Сообщения: 961
Зарегистрирован: 13 авг 2002, 21:36
Откуда: Рига

Пред.

Вернуться в Novell

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4