IRC logs for #buildstream for Saturday, 2023-01-21

juergbinanonyme: I've already rebased and merged jjardon's PR #175914:33
nanonymeOh, ok.14:33
nanonymejuergbi: did you notice it crashed on Debian 10?14:34
nanonymeClosed14:35
juergbithe debian-10 job passed the first run in CI (in the grpcio update PR) and also locally, so I merged it14:35
juergbibut yes, I'm seeing now that it sometimes still crashes there14:36
juergbiI suspect it's still a coverage-related issue14:36
juergbihaven't seen any issues with the fedora 36 and fedora 37 jobs (which still have coverage disabled)14:37
nanonymejuergbi: looks like the top ones by @abderrahim:gnome.org are more or less safe to merge14:37
nanonymeHaha. doras just noticed that if you run out of disk space during build and build fails because of this, BuildStream caches this as failure and pushes it into CAS which prevents any future retries.14:38
nanonymeThis caching failures seems like it should be opt-out14:38
dorasAnd disabled by default, to be honest14:39
nanonymedoras: the point is that everything is reproducible and you can debug failures from CI14:39
nanonymeBut obviously disk space running out is not something you can control14:40
nanonymeAnd not a deterministic phenomenon14:40
dorasBuildStream doesn't live in a bubble of its own with infinite resources. A kernel bug, a random process crash or disk storage running out are indeed real reasons for failures and are very much temporary.14:40
nanonymeRight14:40
nanonymeAnd when there is central CAS, this can in fact mess up the entire project more or less permanently until CAS is fixed14:45
nanonymeSo it's an actively dangerous feature14:45
juergbinot caching failures at all would likely be very inconvenient because in that case also logs of the failed builds would not be available14:48
nanonymeThat is, caching failures itself is not dangerous but pushing failures is14:48
nanonymejuergbi: who cares? We archive them as artifacts14:48
nanonymeIt's harmful to have the artifact in CAS14:48
nanonymeIf you wan tot store the logs, there needs to be some other mechanism that does not prevent rebuilding the element.14:49
juergbia config option to ignore cached failures for bst build would make sense to me14:49
nanonymeBut this is not really a helpful feature in general. If you hit infra failure, it will not be possible to recover without wiping your CAS.14:50
juergbiif build ignores the cached failure, it shouldn't be an issue14:51
nanonymeAhh, right, so you would ignore it for build only but pull it as normal?14:52
juergbiyes14:52
nanonymeWhat if build succeeds after that? Will the successful build artifact replace the failed artifact in CAS?14:52
juergbiyes14:52
nanonymeOk, good. I was worried BuildStream would skip the push.14:52
nanonymeThis would be user config thing, probably?14:53
juergbiyes, could likely be both user config + CLI option14:53
juergbibtw: my test fix for updated grpcio doesn't seem sufficient for bst-1, unfortunately14:54
juergbipresumably due to bst-1 still using fork inside bst itself14:55
nanonymeRight, and changing that would be way too invasive14:56
juergbiCI seems reliable so far with updated coverage: https://github.com/apache/buildstream/pull/181716:00
nanonymejuergbi: don't we run 3.7 on Debian 10?16:09
juergbiyes16:11
nanonymejuergbi: it's just weird that you say in PR that it works on 3.8+, that's all.16:22
juergbinanonyme: ah, what I meant was that Coverage 6 also works on Python 3.8+ with Cython while older versions of Coverage broke with Python 3.8+ (with Cython)16:23
nanonymeFair enough16:23
nanonymejuergbi: it is btw interesting that Fedora is using grpc 1.48.2 together with BuildStream on Python 3.1117:37
nanonymeI wonder if that combination would work at all even if the bug with regex parser was released17:37
nanonymeErm, bug fix was released even17:38
nanonymejuergbi: looks like https://github.com/apache/buildstream/pull/1793 after rebase didn't fail so maybe those were random failures?18:37

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!