public inbox for gentoo-portage-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Brian Harring <ferringb@gmail.com>
To: gentoo-portage-dev@lists.gentoo.org
Subject: Re: [gentoo-portage-dev] Package compression header for binhosts
Date: Tue, 1 Jun 2010 14:52:06 -0700	[thread overview]
Message-ID: <AANLkTintz4rlhvlzDvbgu_6-84jMXzU-QvR4vCjB0q0v@mail.gmail.com> (raw)
In-Reply-To: <4C057DA4.5050408@gentoo.org>

[-- Attachment #1: Type: text/plain, Size: 2380 bytes --]

On Tue, Jun 1, 2010 at 2:37 PM, Zac Medico <zmedico@gentoo.org> wrote:

> On 06/01/2010 02:22 PM, Brian Harring wrote:
> > As for zacs tool to try and generate new views of a repository via
> > hardlinking/recreating the tree... frankly it's a bit of a hack.  Via
> > DEFAULT_URI and relying on the hash, you can make a stable repository
> that
> > is able to be updated in place without corrupting ongoing downloads-
> simply
> > put, new additions to the repo don't perturb current DL's since the md5
> is
> > the same (hash collision chance is low enough that I don't care about it
> > here).
>
> When you say "hash collision" are you talking about
> http://crosbug.com/3225? Maybe that behavior is acceptable for
> small-scale private use, but for large scale public repositories I'd
> say it's totally unacceptable.


That bug isn't about a collision, it's about files being replaced underneath
Packages feet.  Even with the tricks you've leveled the issue of things
changing under foot still is possible- you've just made the race less
likely.

What I was talking about was solving this issue once and for all via
restructuring, and specifically refering to the potential of an md5
collision in the URI space- specifically what I'm implementing for pkgcore
is the ability to do stupid stuff like this-

http://host/binpkg-store/$MD5.{txz,tbz2,tgz}

then have multiple views accessible just via pointing the binpkg repo remote
url at

http://host/views/license/oss-approved/
http://host/views/keywords/amd64/stable/
http://host/views/raw/ # no filtering on the view of the binpkg repo, see
everything.

Via restructuring where the binpkgs are stored and doing this approach,
multiple views can be had easily into the repo.  An additional benefit of
this approach is that via making URI able to point outside the host, you
could combine multiple seperate repositories into one just via a view.



> Eventually, I'd like to see gentoo
> officially distributing binary packages, so that we'll be able to
> get a slice of the binary distribution pie. When that happens, we're
> certainly not going to want to have race conditions like these in
> our public binhosts.
>

I'd suggest abandoning the current repository layout of Packages then, since
it's irrevocably flawed.  You can hack around it via jamming timestamp/md5
info into URI, but that's not a sane solution.

~harring

[-- Attachment #2: Type: text/html, Size: 3390 bytes --]

  reply	other threads:[~2010-06-01 21:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-01  3:32 [gentoo-portage-dev] Package compression header for binhosts Zac Medico
2010-06-01  5:16 ` Brian Harring
2010-06-01 20:01   ` Ned Ludd
2010-06-01 21:22     ` Brian Harring
2010-06-01 21:37       ` Zac Medico
2010-06-01 21:52         ` Brian Harring [this message]
2010-06-01 23:53           ` Zac Medico
2010-06-02  3:42             ` Brian Harring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AANLkTintz4rlhvlzDvbgu_6-84jMXzU-QvR4vCjB0q0v@mail.gmail.com \
    --to=ferringb@gmail.com \
    --cc=gentoo-portage-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox