New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"waiting for package to be activated" when changing recipe dependencies and rebuilding without cleaning work directory #207
Comments
|
Works indeed, and for small project perfectly OK, but for larger projects it's a pain to restart the full build because of an error during build that could have been fixed with a patch? |
|
I face this situation almost all the times. I noticed that it happens more often when I change the build prerequisites, adding or removing cmd |
|
Adding a |
Doesn't that clean the build before a rebuild (eg same as hp pyhouhou -c)? |
|
I once managed to get past this error by moving build package out and back. Also a few times after several minutes of |
|
What I usually do is just Ctrl-C-ing haikuporter and trying again. Sometimes it works, but most of the time not. To me, this looks like a race condition somewhere or a similar issue. |
|
Pretty annoying indeed. |
|
I seem to recall that this is somehow a package_daemon problem, but I do not remember more than that. At any rate, HaikuPorter should have a timeout and not just retry futilely forever. |
|
Here is where it loops forever: haikuporter/HaikuPorter/BuildPlatform.py Lines 205 to 207 in eee899a
|
|
Apparently removing boot/system/packages/administrative/activated-packages from the work directory before restarting haikuporter will fix this. |
|
hm.. should haikuporter be doing this on startup? (if activated-packages exists, and i'm just starting up... delete it) |
|
It does not help all the time, unfortunately. Yesterday I always had the issue and could not get a package to build despite having deleted that file. There was nothing suspicious in the syslog. |
|
Yep, deleting that file or even the whole work foldrr doesnt helps sometimes. |
I think we should fix the root cause in haiku instead (this file should not prevent the packages from reactivating) |
|
Can you try this workaround and see if it "prevents" this from happening: diff --git a/HaikuPorter/BuildPlatform.py b/HaikuPorter/BuildPlatform.py
index 9611545..bf4e5be 100644
--- a/HaikuPorter/BuildPlatform.py
+++ b/HaikuPorter/BuildPlatform.py
@@ -150,6 +150,7 @@ class BuildPlatformHaiku(BuildPlatform):
# activate the build package
packagesDir = buildPlatform.findDirectory('B_SYSTEM_PACKAGES_DIRECTORY')
activeBuildPackage = packagesDir + '/' + os.path.basename(packagePath)
+ time.sleep(3)
self.deactivateBuildPackage(workDir, activeBuildPackage,
revisionedName)Some time ago I've traced this down to a race condition between the package_daemon and packagefs. I haven't spent too much time on it, but I could not think of a way to properly solve the issue at the time. The details are a bit hazy, but I think what it boiled down to was that I am unfortunately very busy currently and cannot dig into it at this time. For someone looking into it, I'd start by thinking through |
Didn't do the trick here after inserting the line, so far the tip from @pulkomandy does the job for me |
|
I've tried the workaround by @mmlr and it seems to fix the issue for me at least so far. |
|
Need to re-check ... will report back later |
|
Although it doesn't work for me when I change some requirements, it did work for me when I was trying to build strawberry, before the change removing the activated directory didn't work, cleaning the build didn't work, neither a reboot. |
Indeed, it seems to solve the same case for me. @threedeyes noticed that if recipe name starts with a letter down the alphabet the likelihood of this case is significantly higher. For example I could almost never build |
|
I have found that deleting the |
|
Yes, nothing new here. See my comment from december 2020:
Can we just patch haikuporter to remove the activated-packages file and do a clean activation of all packages everytime? Or should we fix the underlying problem? Which is probably a better idea, as mmlr already suggested where the issue likely is (see early january 2021 post) |
|
Still not fixed, getting the same annoying |
|
Yesterday the x84_64 buildmaster got stuck for hours https://build.haiku-os.org/buildmaster/master/x86_64/?buildrunDir=7500&viewMode=expanded |
|
This issue is for a specific case where the dependencies for a recipe are changed, and the old work directory cannot be reused. I think that is not possible on the builder, which does a clean build everytime? If I'm right, I would suggest opening a separate issue, even if the error message is the same. |
|
Oh, ok. I thought it was worth mentioning it, just in case. I'll leave the opening of a separate issue to people with actual knowledge of the builder (I'm just a nosy passer-by, and wouldn't have much to add). |
|
Yes, you're right, I have changed the title of this issue to clarify that it is more specific now, I'll wait for your otehr issue so we can investigate it separately. |

The text was updated successfully, but these errors were encountered: