Re: sharing sstate in bitbake-setup
Alexander Kanavin <[email protected]>
| Newsgroups | org.yoctoproject.lists.yocto,org.openembedded.lists.openembedded-core |
|---|---|
| Message-ID | <CANNYZj8bbNnMYWsJb0oz0a3F_gr=zTYkbj8YLKoRYGdF+XbmBQ@mail.gmail.com> |
On Wed, 26 Nov 2025 at 17:41, Richard Purdie <[email protected]> wrote: linked into every build. > > > > I quickly hacked bitbake's cooker.py to try this out: > > > > - dbfile = (self.data.getVar("PERSISTENT_DIR") or > > self.data.getVar("CACHE")) + "/hashserv.db" > > + dbfile = "/home/alex" + "/hashserv.db" > > > > > > And then made two build directories with shared SSTATE_DIR. > > > > TL;DR: everything ran smoothly and as expected. > > > > I ran overlapping builds, added no-ops to gnu-config recipe to 'force' > > hash equivalency, and there were no errors or crashes, and sstate was > > reused as expected. > > > > So I think we should do it like this, subject to 'shared-sstate' > > setting in bitbake-setup, on by default. > > PERSISTENT_DIR is *not* designed to be shared between builds. it might > happen to work but is a really bad idea. Personally, I think those > cache directory variables and cache layout need redesigning so we > should probably take the opportunity to do that. I am not sharing PERSISTENT_DIR. Only the hash equivalency database in hashserv.db, which I believe is fine because sqlite has locking mechanisms and is explicitly designed for it. Alex