public inbox for gentoo-portage-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Zac Medico <zmedico@gentoo.org>
To: gentoo-portage-dev@lists.gentoo.org
Subject: Re: [gentoo-portage-dev] [RFC] New file layout for PKGDIR and binhosts
Date: Wed, 24 Dec 2014 00:13:57 -0800	[thread overview]
Message-ID: <549A75C5.70600@gentoo.org> (raw)
In-Reply-To: <549A4C25.9050000@gentoo.org>

On 12/23/2014 09:16 PM, Matthew Thode wrote:
> I like this (and it has been a long time coming).  What format are we
> going to store the metadata of the use flag combinations and the rest?

The current approach is to store the data in an xpak segment that is
appended to the end of the tbz2 file. The $PKGDIR/Packages files serves
as a cache for the essential parts of the xpak data that are used in
dependency calculations.

> I guess that's already stored since portage knows not to use binpkgs if
> those change.
> 
> Also, would this change be a good time to change to store that metadata
> externally?

That's why we have the $PKGDIR/Packages cache, which is validated using
stat.st_size and stat.st_mtime

> Running portage over NFS with binpkgs takes forever, I

It's probably all of the readdir and stat calls. If we simply assumed
that $PKGDIR/Packages was valid, we could eliminate the readdir and stat
calls. Binhost clients operate under this assumption.

> don't think a binhost makes it faster either.  If there were some way to
> get all the info for the binpkgs into one file (so it could be run on
> cron or something), this could mean that I'd only have to do one file
> request for all that metadata and would be much quicker than inspecting
> all those files.

That's what $PKGDIR/Packages is.
-- 
Thanks,
Zac


  reply	other threads:[~2014-12-24  8:14 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-24  1:51 [gentoo-portage-dev] [RFC] New file layout for PKGDIR and binhosts Zac Medico
2014-12-24  5:16 ` Matthew Thode
2014-12-24  8:13   ` Zac Medico [this message]
2014-12-24 12:01     ` vivo75
2014-12-24 16:07       ` Zac Medico
2014-12-24 18:36         ` vivo75
2014-12-24 19:17           ` Zac Medico
2014-12-25 10:03     ` [gentoo-portage-dev] " Duncan
2014-12-25 11:04       ` Zac Medico
2014-12-26  5:20         ` Duncan
2015-01-07  5:32       ` Brian Dolbec
2014-12-27 14:25 ` [gentoo-portage-dev] " Rick "Zero_Chaos" Farina
2014-12-29  3:53   ` Zac Medico

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=549A75C5.70600@gentoo.org \
    --to=zmedico@gentoo.org \
    --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