Bug 26573 - bug in check-git-inheritance implementation
Summary: bug in check-git-inheritance implementation
Status: CLOSED FIXED
Alias: None
Product: Infrastructure
Classification: Infrastructure
Component: girar (show other bugs)
Version: unspecified
Hardware: all Linux
: P3 normal
Assignee: Dmitry V. Levin
QA Contact: Mikhail Gusarov
URL:
Keywords:
Depends on:
Blocks: 26517
  Show dependency tree
 
Reported: 2011-11-10 23:48 MSK by viy
Modified: 2011-11-22 02:35 MSK (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description viy 2011-11-10 23:48:24 MSK
Имеем task #58133, не проходит gears inheritance check,
при этом отключить check-git-inheritance не удается,
girar-task check-git-inheritance отрицает наличие git inheritance check failures.

$ ssh git.alt task check-git-inheritance 58133 500 disable 3c95ecbf0e7e856e5803cfb72768fb4859fb6ac0
girar-task check-git-inheritance: task #58133: subtask #500 has no git inheritance check failures to overcome yet

$ ssh git.alt task check-git-inheritance 58133 700 disable 02cb55cef875d5a07dd459d2eaf6969d3cf5fdc0
girar-task check-git-inheritance: task #58133: subtask #700 has no git inheritance check failures to overcome yet

2011-Nov-11 00:28:29 :: [i586] repocop-unittest-vendor-tag: install check OK
error: /gears/r/repocop-unittest-freedesktop.git already contains `t6' branch, but does not contain `sisyphus' branch
error: /gears/r/repocop-unittest-lintian-noncollectors.git already contains `t6' branch, but does not contain `sisyphus' branch
error: /gears/r/repocop-unittest-rpm-filetriggers.git already contains `t6' branch, but does not contain `sisyphus' branch
2011-Nov-11 00:28:30 :: gears inheritance check FAILED
2011-Nov-11 00:28:30 :: task #58133 for t6 FAILED
Comment 1 Dmitry V. Levin 2011-11-11 00:02:38 MSK
(In reply to comment #0)
> Имеем task #58133, не проходит gears inheritance check,
> при этом отключить check-git-inheritance не удается,
> girar-task check-git-inheritance отрицает наличие git inheritance check
> failures.

Реализация такова, и это было сделано специально, что преодолеть проверку наследования в рамках задания можно только *после* того, как нарушение наследования было диагностировано во время обработки задания.

Груба говоря, girar-builder при обнаружении нарушения наследования сохраняет информацию о коммите-предке, и только после этого girar дает возможность внести информацию для преодоления проверки.  Если эта информация совпадает, то проверка преодолевается.
Comment 2 viy 2011-11-11 00:13:11 MSK
(In reply to comment #1)
> Реализация такова, и это было сделано специально, что преодолеть проверку
> наследования в рамках задания можно только *после* того, как нарушение
> наследования было диагностировано во время обработки задания.

Гм. из лога сборки #58133 видно, что таки "нарушение
> наследования было диагностировано во время обработки задания."

 error: /gears/r/repocop-unittest-freedesktop.git already contains `t6' branch,
but does not contain `sisyphus' branch
[...]
2011-Nov-11 00:28:30 :: gears inheritance check FAILED

тем не менее, ssh git.alt task check-git-inheritance, выполненное
__после__ неудачной сборки, отрицает наличие git inheritance check
failures:

$ ssh git.alt task check-git-inheritance 58133 500 disable
3c95ecbf0e7e856e5803cfb72768fb4859fb6ac0
girar-task check-git-inheritance: task #58133: subtask #500 has no git
inheritance check failures to overcome yet
Comment 3 viy 2011-11-11 00:17:35 MSK
легко воспроизвести. просто запустите 
$ ssh git.alt task check-git-inheritance 58133 700 disable 02cb55cef875d5a07dd459d2eaf6969d3cf5fdc0
---- result:----
girar-task check-git-inheritance: task #58133: subtask #700 has no git inheritance check failures to overcome yet
Comment 4 Dmitry V. Levin 2011-11-11 00:31:50 MSK
(In reply to comment #2)
> Гм. из лога сборки #58133 видно, что таки "нарушение
> > наследования было диагностировано во время обработки задания."
> 
>  error: /gears/r/repocop-unittest-freedesktop.git already contains `t6' branch,
> but does not contain `sisyphus' branch

А, это совсем другое.  gb-task-check-girar решил, что происходит копирование гитового пакета, и попытался применить соответствующую проверку.  А копирование в этом задание как раз не гитовое...
Comment 5 Dmitry V. Levin 2011-11-11 01:23:05 MSK
gb-task-check-girar исправлен, см.
http://git.altlinux.org/tasks/58133/logs/events.2.1.log

warning: /gears/r/repocop-unittest-freedesktop.git already contains `t6' branch, but does not contain `sisyphus' branch
error: /gears/r/repocop-unittest-freedesktop.git branch `t6' already exists, package update by srpm upload is not possible
Comment 6 viy 2011-11-11 10:54:46 MSK
спасибо!