[Mageia-dev] urpmi output missing some packages in progress (with chroot)

Colin Guthrie mageia at colin.guthr.ie
Sun Mar 31 20:41:13 CEST 2013


'Twas brillig, and Thierry Vignaud at 31/03/13 17:30 did gyre and gimble:
> On 31 March 2013 18:22, Thierry Vignaud <thierry.vignaud at gmail.com> wrote:
>>> Preparing...                     #####################################
>>>     1/154: dash-static           ##########################warning:
>>> group daemon does not exist - using root
>>> warning: group mail does not exist - using root
>>> ###########
>>>     2/154: glibc                 #####################################
>>>     3/154: lib64termcap2         #####################################
>>>     4/154: perl-base             #####################################
>>>     5/154: update-alternatives   #####################################
>>>     6/154: bash                  #####################################
>>>     7/154: lib64python2.7        #####################################
>>>     -/154:                       #####################################
>>>
>>>
>>> It seems the last one in that list is filesystem, but it has neither a
>>> number, nor is it's name printed.
>>>
>>> I suspect this might related to the fact that they key is no present
>>> which I'm attributing to the fact this is a blank chroot rather than an
>>> actual signing problem.
>>
>> It means we failed to get this package fullname
>> http://svnweb.mageia.org/soft/rpm/urpmi/trunk/urpm/install.pm?revision=7595&view=markup#l121
>>
>> After debuging, callback_open got called one too much (it got called
>> twice for first package
>> which is actually filesystem), thus we bump the index one too much.
>> Sadly the doble call came from librpm's rpmtsRun()
>>
>> Interestingly, the open & close calls are just before and after rpm prints:
>> "warning: filesystem-2.1.9-19.mga3.x86_64: Header V3 RSA/SHA1
>> Signature, key ID 80420f66: NOKEY
> 
> It happens b/c filesystem as a %pretrans
> runTransScripts() calls rpmteProcess() which says:
>     /* Dont bother opening for elements without pre/posttrans scripts */
> 
> But since we now have package with %pretrans due to /usr migration,
> it goes further and calls rpmteOpen()->rpmteFDHeader()
> which notifys us about a package opening in order to get its file descriptor.
> 
> Since we now have %pretrans scriptlets, I'll adapt urpmi in order not to
> bump index out of actual transaction.

Awesome :)

Good debugging and interesting info above! Thanks as always Thierry :)

Col


-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/


More information about the Mageia-dev mailing list