From: Alexey Tourbin <at@altlinux.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: [devel] bootstrap транзакции
Date: Thu, 8 Nov 2007 22:23:11 +0300
Message-ID: <20071108192311.GX24160@solemn.turbinal> (raw)
In-Reply-To: <20071108190328.GW24160@solemn.turbinal>
[-- Attachment #1: Type: text/plain, Size: 1905 bytes --]
On Thu, Nov 08, 2007 at 10:03:28PM +0300, Alexey Tourbin wrote:
> On Thu, Nov 08, 2007 at 08:42:25PM +0300, Dmitry V. Levin wrote:
> > Сборка транзакции (A) происходит следующим образом:
> > - создаётся репозиторий - снапшот текущего опубликованного Сизифа (Ra);
> > использование ссылок делает эту операцию дешевой;
> > - на этом снапшоте выполняется сборка --with-stuff исходных пакетов
> > транзакции; если хотя бы один не собрался, то транзакция отменяется
> > (в первой реализации сборочной системы не вижу смысла оптимизировать
> > эту часть);
>
> Здесь есть тонкость: сборка --with-stuff второго и последующего пакетов
> транзакции идёт со СТАРЫМИ contents_index_bin и contents_index_all.
> То есть практика сборки --with-stuff потенциально может давать
> неправильныме зависимости -- сразу же после фиксации транзакции
> второый и последующие пакеты при тестовой пересборке могут получить
> отличающиеся зависимости. Так что здесь есть несколько подходов:
> 0) забить; 0a) пока забить; 1) делать в хешере локальный
> contents_index_bin/all; 2) формировать временный сизиф после каждого
> пакета транзакции и вести сборку уже на нём. Это всё равно не до конца
> решает вопрос, если зависимостями между пакетами в транзакции
> топологически не упорядочены (то есть напр. при сборке первого пакета в
> транзакции используется старая сборка одного из последующих пакетов).
То есть транзакции является таковой лишь внешне. Внутри же никакой
"атомарности" нет, и как бы существует проблема "bootstrap'а"
транзакии. Если транзакция не является "слишком паталогической"
(не содержит "атаки"), то bootstrap транзакции можно решить двойной
пересборкой. 1) Сначала всё собрать в том порядке в каком есть;
2) упорядочить собранные пакеты топологически; 3) переупорядочить
соответствующим образом src.rpm пакеты; 4) собрать src.rpm пакеты
в новом порядке ещё раз.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-11-08 19:23 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-06 21:35 [devel] Метарепозиторий Сизифа Alexey Tourbin
2007-11-07 5:23 ` Alexey Tourbin
2007-11-07 5:50 ` Хихин Руслан
2007-11-07 7:01 ` Alexey Tourbin
2007-11-07 21:37 ` Kirill A. Shutemov
2007-11-07 10:16 ` Alexey I. Froloff
2007-11-07 10:38 ` Alexey Gladkov
2007-11-07 10:39 ` Alexey Gladkov
2007-11-07 10:43 ` Alexey Gladkov
2007-11-07 10:49 ` Alexey Gladkov
2007-11-08 17:42 ` Dmitry V. Levin
2007-11-08 18:38 ` Sergey Vlasov
2007-11-08 20:17 ` Dmitry V. Levin
2007-11-08 19:03 ` Alexey Tourbin
2007-11-08 19:20 ` Kirill A. Shutemov
2007-11-08 19:46 ` Alexey Tourbin
2007-11-08 19:23 ` Alexey Tourbin [this message]
2007-11-08 21:20 ` Dmitry V. Levin
2007-11-08 22:08 ` Alexey Tourbin
2007-11-08 22:30 ` [devel] git-репозитарий для логов сборки Alexey Tourbin
2007-11-08 22:48 ` Dmitry V. Levin
2007-11-08 23:28 ` Alexey Tourbin
2007-11-09 1:09 ` Dmitry V. Levin
2007-11-09 1:21 ` Alexey Tourbin
2007-11-09 2:06 ` Alexey Tourbin
2007-11-08 22:38 ` [devel] Метарепозиторий Сизифа Dmitry V. Levin
2007-11-08 23:04 ` Alexey Tourbin
2007-11-09 1:06 ` Alexey Tourbin
2007-11-09 6:44 ` Kirill A. Shutemov
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=20071108192311.GX24160@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