[CentOS] Trying to find packages that depend on package X.

Fri May 26 23:37:13 UTC 2006
William L. Maltby <BillsCentOS at triad.rr.com>

On Fri, 2006-05-26 at 19:01 -0300, Rodrigo Barbosa wrote:
> Hash: SHA1
> On Fri, May 26, 2006 at 01:22:42PM -0400, William L. Maltby wrote:
> > On Fri, 2006-05-26 at 14:06 -0300, Rodrigo Barbosa wrote:
> > <snip>
> > 
> > > rpm -q --provides PACKAGE_NAME | sed 's/^/"/;s/\([^[:space:]]\) *
> > > $/\1"/;/=/{h;s/ =.*$/"/;G}' | xargs rpm -q --whatrequires | grep -v -E
> > > '^no package'
> > 
> > Still needs some work, Ran it here and only got 38 packages, s/b 207
> > here. Timing on 1st run was
> > 
> >    real    0m0.701s
> >    user    0m0.186s
> >    sys     0m0.019s
> > 
> > By the time we get 207 pkgs, I suspect a little overhead penalty.
> I didn't change it to improve performance, for to get all the
> results correctly (previous one was missing some of them).

I ran the new one on that test. Yours might be right, but yum indicates

> I really don't think there is any faster way to do it, since rpm
> accessing its db3 files is what costs so much on this. 10 or 100
> dependencies should make little difference.

Maybe it's just 'cause I've been around too long, but string processing
is expensive and I expect that if your script found 5.5 times as many
entries we would see a substantial increase. But as you say, that's not
the issue.

I've not looked at the individual step's output in the pipeline you
provided, but I'll have to learn a lot more about the output of rpm
before I can dink around with it to find what's missing. Since yum can
do it, as long as I can remember to "Just Say No" (TM), I don't feel
like chasing it myself.

I'm still interested to know if you think it's worth asking yum to do.
It's got to be a simple thing since remove does everything we need it to
do already.

What say ye: yea or nay?

> <snip sig stuff>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.centos.org/pipermail/centos/attachments/20060526/3f2e5055/attachment-0005.sig>