ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Tourbin <at@altlinux.ru>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] [JT] Re: RFC: тестирование входящих пакетов полной пересборкой сизифа
Date: Sat, 25 Aug 2007 22:33:50 +0400
Message-ID: <20070825183350.GB26788@solemn.turbinal> (raw)
In-Reply-To: <20070825101646.GB6118@hell.fortress>

[-- Attachment #1: Type: text/plain, Size: 3538 bytes --]

On Sat, Aug 25, 2007 at 02:16:46PM +0400, Alexey I. Froloff wrote:
> * Alexey Tourbin <at@> [070825 13:40]:
> > Разруливать, по-моему, должен не столько товарищ, сколько maintainer.
> > То есть ему через несколько часов приходит письмо: "ой-ой-ой, вы
> > ДЕЙСТВИТЕЛЬНО хотите отправить это дело в сизиф"?  И maintainer
> > отвечает: "да-да-да, я знаю, исправленные пакеты почти готовы".
> Это АЦЦКИ медленно.  Вот, например, thresh@ залил новый FLAC со
> сменой API и одновременно NMU на несколько зависимых пакетов.
> Или либа с новым SONAME и compat пакет.  Если их перемещать по
> одному, то будут новые unmet'ы в репозитарии и сломанная сборка.
> Ждать ещё по несколько часов для каждого пакета?

Я рассматриваю более пессимистическую ситуацию: maintainer направляет
новый пакет и НЕ ЗНАЕТ, как изменятся характеристики сизифа на этом
пакете.  Ответственный maintainer, который заранее подготовил NMU,
это хорошо, но технологичность должна подразумевать защиту от сбоев
по пессимистическому сценарию.

Опять же, я не против транзакции из нескольких пакетов, если все они
проводятся одним человеком.  Однако NMU настораживает.  Техника
получения NMU до конца не отработана.

Насчет "будет медленно" не очень согласен.  Входящий flac-*.src.rpm
сейчас "задевает" 161 пакет, включая те приложения в которых FLAC для
сборки по сути и не используется (а ставится только одна только
библиотека libflac).

> > > Насколько сложнее проверять и пересобирать пакеты "пачками"?
> > Наверное, если нужно провести сразу несколько пакетов в виде транзакции,
> > то наверное нужно предусмотреть специальную операцию "отправить на вход
> > группу пакетов".
> Поскольку из одного src получается больше-или-равно одного
> бинарного пакета, принципиальной разницы я не вижу.

Дело в том, что нужно уметь ответить на вопрос: КТО именно и ЗА СЧЕТ
ЧЕГО именно сломал ЭТОТ пакет (который перестал собираться).  Чем меньше
будет неопределенности, тем лучше (будет понятно, что нужно откатывать,
или хотя бы кого трясти).

С другой стороны, хотелось бы, конечно, обеспечивать атомарную смену
soname'ов в репозитарии.  Но при числе вовлеченных maintainer'ов больше
2-3 это становится проблемно...

Кстати смену soname'ов можно обнаруживать автоматически.  Просто нужно
сравнивать зависимости у пакетов, свежепротестированных пересборкой,
и уже собранных пакетов.

В общем, всякие разные штучки-дрючки можно замутить, когда пакет
находится на подступах к сизифу.  Тестирование пересборкой это только
одна из них.

К сожалению, работа управдома для меня достаточно непрозрачна, и,
насколько я знаю, нигде на git.altlinux.org управдомовские скрипты
не публикуются.

Плюс есть ещё параллельные транзакции.  От них ЗЕЛО голова болит, я их
пока даже не обсуждал.  Грубо говоря, начиная говорить о транзакциях,
есть два подхода.  Первый подход -- каждый пакет собирается и
тестируется на логически "приватной копии" Сизифа.  То есть каждый
входящий src.rpm пакет берёт "длинный" read-lock на текущий сизиф, а
"сводильщик" будет работать в режиме writer starvation.  Другой крайний
вариант -- один большой общий отстойник для всех, который может
полностью или частично перемещаться в сизиф.  Кстати это не настолько
глупо, как может показаться с первого взгляда.  Промежуточный вариант --
изоляция на уровне maintainer'а.  Ну и что будет если при сведении
"сводильщик" обнаруживает пересечения, тоже непонятно.  Ладно, это уже
вопросы на более отдалённое будущее, когда основные проблемы будут
решены.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2007-08-25 18:33 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-21 21:43 [devel] " Alexey Tourbin
2007-08-22  5:25 ` Денис Смирнов
2007-08-22  8:22   ` Хихин Руслан
2007-08-23 10:19 ` Alexey Tourbin
2007-08-23 11:10   ` Michael Shigorin
2007-08-23 11:16     ` Mykola S. Grechukh
2007-08-23 11:18       ` Mykola S. Grechukh
2007-08-23 11:52         ` [devel] [JT] " Michael Shigorin
2007-08-23 12:10           ` Mykola S. Grechukh
2007-08-23 12:11             ` Michael Shigorin
2007-08-23 12:32               ` Alexey Tourbin
2007-08-23 19:05                 ` [devel] статистика Alexey Tourbin
2007-08-23 20:25                   ` Alexey Tourbin
2007-08-23 20:37                   ` Vadim V. Zhytnikov
2007-08-23 19:51                     ` Alexey Tourbin
2007-08-23 21:03                     ` Alexey Tourbin
2007-08-23 21:08                   ` Хихин Руслан
2007-08-23 21:47                     ` Alexey Tourbin
2007-08-23 21:59                       ` Alexey Tourbin
2007-08-23 22:19                       ` Alexey Tourbin
2007-08-23 12:19           ` [devel] [JT] Re: RFC: тестирование входящих пакетов полной пересборкой сизифа Alexey Tourbin
2007-08-23 13:12             ` Michael Shigorin
2007-08-24 11:15               ` Alexey Tourbin
2007-08-25  9:15                 ` Alexey I. Froloff
2007-08-25  9:33                   ` Alexey Tourbin
2007-08-25 10:16                     ` Alexey I. Froloff
2007-08-25 11:25                       ` Igor Vlasenko
2007-08-25 11:36                         ` Igor Vlasenko
2007-08-25 11:48                           ` Michael Shigorin
2007-08-25 11:53                             ` Mykola S. Grechukh
2007-08-25 21:58                               ` Igor Vlasenko
2007-08-25 22:43                                 ` Alexey Tourbin
2007-08-25 23:35                                   ` Igor Vlasenko
2007-08-26 13:38                                   ` Alexey I. Froloff
2007-08-25 18:33                       ` Alexey Tourbin [this message]
2007-08-25 19:32                         ` [devel] incominger Michael Shigorin
2007-08-25 20:13                         ` [devel] [JT] Re: RFC: тестирование входящих пакетов полной пересборкой сизифа Денис Смирнов
2007-08-23 13:23   ` [devel] " Alexey Tourbin
2007-08-24 12:51     ` Alexey Tourbin
2007-08-24 21:23     ` [devel] статистика [2] Alexey Tourbin
2007-08-25 14:57       ` [devel] Критерий значимости пакета (Was: статистика) Alexey Rusakov
2007-08-25 20:10         ` Денис Смирнов
2007-08-25 20:28           ` Alexey Tourbin
2007-08-25 22:47             ` Денис Смирнов
2007-08-25 23:55               ` Alexey Tourbin
2007-08-29 20:39       ` [devel] статистика [2] Dmitry V. Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070825183350.GB26788@solemn.turbinal \
    --to=at@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git