rpm 5.x in Th
Jan Rękorajski
baggins at pld-linux.org
Tue Sep 25 11:25:06 CEST 2012
On Tue, 25 Sep 2012, Paweł Gołaszewski wrote:
> On Sat, 22 Sep 2012, Jan Rękorajski wrote:
> > RPM 5 is now officially the package manager of PLD Th.
> > Complete package set (rpm, poldek, etc.) is available in th-test,
> > and builders have been upgraded to new rpm.
> >
> > Some basic information is available on http://www.pld-linux.org/RPM5
> > feel free to add whatever you think may be important.
>
> Wieści z upgrade:
>
> 1. Nie wiem czy ten komunikat jest ważny czy nie:
> I rpm-5.4.10-12.i686 rpm-base-5.4.10-12.i686 rpm-build-5.4.10-12.i686 rpm-build-macros-1.653-1.noarch
> I rpm-lib-5.4.10-12.i686 rpm-utils-5.4.10-12.i686
> D poldek-0.30-1.rc6.2.i686 poldek-libs-0.30-1.rc6.2.i686
> R poldek-0.30-1.rc5.14.i686 poldek-libs-0.30-1.rc5.14.i686 rpm-4.5-69.i686 rpm-base-4.5-69.i686 rpm-build-4.5-69.i686
> R rpm-build-macros-1.650-2.noarch rpm-lib-4.5-69.i686 rpm-utils-4.5-69.i686
> [...]
> rpmdb_checkversion: BDB0126 mmap: Invalid argument
Jesteś w stanie to powtórzyć?
Mnie się to trafiło raz, a kolejne uruchomienie rpmdb_checkversion już
błędu nie pokazało :(
> 2. Próba upgrade pakietów z ready _przed_ nowym rpm daje coś takiego:
> [...]
> 45:QtWebKit ########################################### [ 58%]
> 46:QtXmlPatterns ########################################### [ 60%]
> rpm: rpmdb.c:3429: rpmdbAdd: Warunek zapewnienia `(dlen & 1) == 0' nie został spełniony.
Podejrzewam, że rpm5 inaczej zapisuje w pakietach tagi RPM_I18NSTRING_TYPE, czyli tłumaczenia
i dlatego rpm4 się wywala na niektórych pakietach.
> Czy wszystkie nowobudowane pakiety nie powinny mieć wymagania nowego
> rpm-a?
Żaden problem, tylko poproszę o sugestie jak to zrobić automagicznie.
> 3. Uruchomienie poldka po upgrade:
> # poldek -n th -n th-ready
> BDB0641 __db_meta_setup: /var/lib/rpm/Requirename: unexpected file type or format
> Wczytywanie [pndir]th...
> Wczytywanie [pndir]th...
> Wczytywanie [pndir]th...
> Wczytywanie [pndir]th...
> Wczytywanie [pndir]th-ready...
> Wczytywanie [pndir]th-ready...
> Przeczytano 40408 pakietów
> Usunięto 18993 zdublowane pakiety z listy dostępnych
> Wczytywanie [rpmdbcache]/var/lib/rpm...
> rpmdb: BDB0126 mmap: Zły argument
> rpmdb: /var/lib/rpm/Packages: BDB0088 DB_SECONDARY_BAD: Secondary index inconsistent with primary
> błąd: db3cget:db3.c:1406: dbcursor->get(-30972): BDB0088 DB_SECONDARY_BAD: Secondary index inconsistent with primary
> poldek: rpmdb.c:2346: rpmmiNext: Warunek zapewnienia `0' nie został spełniony.
> Przerwane
> #
>
> Dopiero zrobienie dbconvert załatwiło sprawę.
>
> 4. Czy w związku z tym dbconvert nie powinno być zawsze przy upgrade
> uruchamiane?
Patrz punkt 1, rpmdb_checkversion powinien powiedzieć czy trzeba zrobić
upgrade - niestety jak nie będę w stanie zreprodukować błędu to go nie
naprawię :(
Ewentualnie można wymuszać dbconvert na jakimkolwiek błędzie przy próbie
otwarcia starej bazy.
--
Jan Rękorajski | PLD/Linux
SysAdm | http://www.pld-linux.org/
baggins<at>mimuw.edu.pl
baggins<at>pld-linux.org
More information about the pld-devel-pl
mailing list