Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Mike Looijmans <mike.looijmans@topic.nl>,
	OE-core <openembedded-core@lists.openembedded.org>
Subject: Re: How to move a recipe to another directory without invalidating its sstate-cache?
Date: Wed, 16 Dec 2015 13:33:56 +0000	[thread overview]
Message-ID: <1450272836.13505.124.camel@linuxfoundation.org> (raw)
In-Reply-To: <567164AF.1040405@topic.nl>

On Wed, 2015-12-16 at 14:18 +0100, Mike Looijmans wrote:
> On 16-12-15 13:35, Richard Purdie wrote:
> > On Wed, 2015-12-16 at 10:38 +0100, Mike Looijmans wrote:
> > > I renamed "recipes-some/foo/bar.bb" to "recipes
> > > -some/buzz/bar.bb"
> > > 
> > > Rebuilding bar and its dependencies will take about 16 hours. So
> > > I
> > > don't want
> > > to trigger a rebuild.
> > > 
> > > running "bitbake -S printdiff bar" only reveils this:
> > 
> > I'm not sure I trust the output of -S printdiff, there are some
> > cases
> > it doesn't seem to "guess" right. I wish I or someone one could fix
> > but
> > but we can do its work manually. Can you try something like:
> > 
> > set TMPDIR = "x"
> > bitbake -S bar
> > rename the recipe
> > set TMPDIR = "y"
> > bitbake -S bar
> 
> Found out I need an extra "none" in here:
> bitbake -S none bar

Sorry, yes.

> > then
> > 
> > "ls tmp-x/stamps/xxxx/bar"
> > "ls tmp-y/stamps/xxxx/bar"
> > 
> > and see which tasks change signature. Then run:
> > 
> > "bitbake-diffsigs <sig A> <sig B>"
> > 
> > and see if that makes more sense?
> 
> That gave the same output. Everything after "runtaskdeps" is bogus
> because its 
> value changes from [blahblah, foobar] into [buzbar, blahblah] and now
> diffsig 
> seems to attempt to match the "blahblah" signatures against those of
> "buzbar".
> 
> Which sort of hints that if my new name starts with an "f" the
> reordering 
> won't happen, so I'm gonna try renaming to "fbuz" now,,,

I still suspect this might be the way the tool displays the data rather
than the real problem as there is some fuzziness in the data that code
has to work with. Bitbake just knows there are dependencies on hashes
X, Y, Z and it has to try and guess how to match them up. The paths are
included to help reduce fuzz but are only used by the analysis code,
not the checksum creation.

Did the hashes themselves change or just the paths? I'm wondering if
the order that bitbake adds the checksums to the main checksum may have
some bearing on this...

Being able to see some real data would also help. Does this reproduce
with a public recipe I can see the real data for?

Cheers,

Richard



  parent reply	other threads:[~2015-12-16 13:33 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-16  9:38 How to move a recipe to another directory without invalidating its sstate-cache? Mike Looijmans
2015-12-16 12:35 ` Richard Purdie
2015-12-16 13:18   ` Mike Looijmans
2015-12-16 13:26     ` Mike Looijmans
2015-12-16 13:33     ` Richard Purdie [this message]
2015-12-17  6:24       ` Mike Looijmans
2015-12-17 12:47         ` Mike Looijmans

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=1450272836.13505.124.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=mike.looijmans@topic.nl \
    --cc=openembedded-core@lists.openembedded.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