Re: Proposal: Faster composes by eliminating deltarpms and using zchunked rpms instead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2018-12-03 at 22:16 +0100, Jan Pokorný wrote:
> On 16/11/18 22:07 +0000, Jonathan Dieter wrote:
> > The core idea behind zchunk is that a file is split into independently
> > compressed chunks and the checksum of each compressed chunk is stored
> > in the zchunk header.  When downloading a new version of the file, you
> > download the zchunk header first, check which chunks you already have,
> > and then download the rest.
> 
> Just one more thought I reliazed in hindsight, there are ways to cut down
> the installed files in RPM ecosystem, currently with a request to omit
> documentation (%doc tagged files, see --nodocs/--excludedocs).
> 
> Indeed, that's a sort of files you can usually omit without hesitation
> in containers/VMs.  Perhaps there are some more bits that are de facto
> optional without losing anything from the functionality.
> 
> So with clever separation, such bits wouldn't even need to be downloaded
> when they will not eventually make it to the disk.  That might make
> things like customizing a base container image tiny bit more swift,
> e.g. in CI/CD context without many connectivity guarantees (up to
> mirrors anyway).  But might not be worth it if the trade-off
> is already predictably suboptimal in other aspects.

I think this is very interesting and definitely feasible (assuming the
core concept of zchunked rpms is reasonable).

On a tangent, I realized something else about metadata generation (and
I think someone else had picked up on it, but it hadn't quite
registered with me).  Currently generating metadata for RPMs involves
reading the full RPM to calculate the checksum.  With zchunk, the
header checksum is stored at the beginning of the file and is all you
need to verify a zchunk file. 

Jonathan

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux