On 11/22/11 12:25, Tim Foster wrote:
On 11/23/11 07:02 AM, Shawn Walker wrote:
* manifests shouldn't be permanently cached unless a package is
actually installed; that's why manifests are automatically removed
when a package is uninstalled
pkglint actually relies on this being the case (if I'm understanding you
correctly)
That is, pkglint uses a pair of images as it's cache, one for the
reference image, one for the image being linted, though we never install
packages to those images.
In src/modules/lint/engine.py we use api_inst.get_manifest(<PkgFmri>) to
retrieve the manifest from the image.
If a change is made such that the API never caches the manifest unless
the package is installed, then it'll have a catastrophic performance
impact on pkglint when re-running a lint job and expecting that a
previous job has populated the cache (the userland build depends on
this, in particular)
I am aware of that, so please don't freak out just yet :-)
I would note that pkglint is relying on an internal implementation
detail that currently causes manifests to be cached, but there's no
guarantee that the API actually caches the manifest.
So when/if this change is made, we'd need to change pkglint to cache its
own manifests depending on how it uses this.
We can revisit this at that point.
-Shawn
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss