rcleartool checkin является атомным?
У меня плохое предчувствие, что ответ отрицательный, но является ли команда проверки ClearCase Remote Client в режиме с одной командой в любом случае атомарной?
Например, у меня есть три файла A, B и C. Я делаю изменения в каждом файле и выполняю проверку. A регистрируется, B регистрируется, но C получает конфликт слияния. В таком случае, что происходит? Сбой проверки для всех файлов или только для C (в этом случае репо находится в поврежденном состоянии).
Если это последнее, есть ли способ сделать его атомарным, используя только rcleartool?
Любая помощь будет оценена!
1 ответ
Я еще не проверял это, но не это:
- Атомная регистрация должна быть включена в целевом Vob, в котором вы хотите выполнять атомные проверки.
- Это только для базы ClearCase
- Вам нужен 7.1.2 (в противном случае у вас будет ошибка для большинства типов объектов при проверке нескольких файлов)
- Никакие другие (чтение / запись) операции с Vobs невозможны во время атомной регистрации.
(что заставляет меня думать, что rcleartool не должен быть в состоянии выполнить - по WAN - атомную регистрацию: он блокировал бы Vob на слишком много времени).
В последнем (7.1.2) описании Checkin упоминается:
Выберите эту опцию (которая также называется атомарной регистрацией), чтобы указать, что операция регистрации выполняется в одной массовой транзакции. Если по какой-либо причине происходит сбой любого из проверяемых ресурсов, вся операция по возврату завершается неудачей.
Когда вы выбираете эту опцию, Checkin, даже если версия идентична его предыдущей опции, выбирается автоматически, поскольку идентичный файл может привести к сбою всей регистрации.
Таким образом, в случае конфликта слияния он прервет всю транзакцию.