update mechanism for new releases

Panu Matilainen pmatilai at redhat.com
Fri Jun 26 10:02:24 UTC 2009


On Tue, 23 Jun 2009, Martin Langhoff wrote:

> On Tue, Jun 23, 2009 at 9:10 PM, Mathieu Bridon
> (bochecha)<bochecha at fedoraproject.org> wrote:
>> RPM has seen a lot of improvements in speed and memory consumption
>
> Are there any improvements on recovery of unexpectedly failed
> transactions, such as OOM, kernel oops or hard power-off?

Other than thinking about it, and trying hard to get memory usage during 
transaction to bare minimum to avoid the OOM's in the first place, no.

According to valgrind/massif, rpm 4.7.x heap consumption during the 
transaction execution is mere megabytes (+ size of a single header at a 
time) even for largish transactions. We throw away pretty much everything 
that can be reconstructed at the time of actual package install stage when 
the full header is (re)loaded, whereas older versions kept the entire file 
info sets (by far the biggest memory consumer) of all packages loaded 
throughout the transaction. There's still work left in the memory use area 
though: now with the heap consumption down we need to figure out what's 
keeping RSS much higher than it should optimally be and what can be done 
about it to see the full benefit of the internal memory savings.

Restarting an interrupted transaction is an interesting (and hard) 
problem. There's quite a pile of state that needs recording to persistent 
store and teaching various parts of the transaction machinery to use that, 
and questions like what to do if we can't get the same exact packages at 
replay time, short of having rpm make hardlinks (or copies if hardlink is 
not possible) - rpm itself knows nothing about where a package came from, 
packages can vanish from repositories etc...

 	- Panu -






More information about the fedora-devel-list mailing list