On Wed, Jul 16, 2003 at 01:16:18PM +0200, Ralf S. Engelschall wrote:
> On Wed, Jul 16, 2003, Matthias Kurz wrote:
> 
> > [...]
> > The best approach, from my point of view, would be to make the rpms more
> > "rsync-friendly". I thought about hacking rsync, so that it can ignore
> > parts of a filename and recognize, when two files are very similiar.
> > But a few random tests (using xdelta) showed that the differences between
> > two versions where quite large. Hmmm, maybe i picked always packages,
> > where the vendor sources changed ? Or is it, because some parts of the
> > rpm are compressed as a whole ? I always had better results doing the
> > xdelta before compression.
> 
> OpenPKG .src.rpm's are actually CPIO archives of the source files (.spec
> plus .patch files plus vendor tarballs, etc) which are compressed via
> bzip2(1) and with an RPM header in front of the result. Either the
> compression is your problem or/and the fact that AFAIK the source files
> are not inserted into the CPIO payload in the same order each time.
> 
> > Just tried python-2.2.3-20030716.src.rpm and python-2.2.3-20030714.src.rpm.
> > A direct xdelta gives a delta of 6727215 bytes. Converting the rpms with
> > rpm2cpio and doing a xdelta on the resulting cpio archives gives a delta of
> > 373 bytes.
> 
> A clear indication that the compression is the problem.
> 
> > When i rename python-2.2.3-20030716.src.rpm to python-2.2.3-20030714.src.rpm
> > and use rsync, i get
> > wrote 6743450 bytes  read 36 bytes  13486972.00 bytes/sec
> > total size is 6742530  speedup is 1.00
> >
> > Looks, like there is room for improvement. Except i did something wrong.
> 
> I think because of the compression you have no chance. The best solution
> for all this, as I already mentioned, to roll the .src.rpm yourself from
> the parts.

Given someone can reproduce my results i would prefer to try to modify
rpm and rsync. I don't think this is much more complicated than building
my own rpm factory for the "official" parts. For my own things i have
to do it anyway, but that is easier, i think.


   (mk)

-- 
Matthias Kurz; Fuldastr. 3; D-28199 Bremen; VOICE +49 421 53 600 47
   >> Im prämotorischen Cortex kann jeder ein Held sein. (bdw) <<
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
User Communication List                      [EMAIL PROTECTED]

Reply via email to