IRC logs for #buildstream for Wednesday, 2018-01-10

*** mcatanzaro has joined #buildstream03:29
*** mcatanzaro has quit IRC04:49
*** jude has joined #buildstream07:36
*** tristan has joined #buildstream07:41
*** ernestask has joined #buildstream07:47
*** valentind has joined #buildstream09:04
*** noisecell has joined #buildstream09:20
gitlab-br-botbuildstream: issue #184 ("Add additional information to metadata/log file") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/18409:50
*** valentind has quit IRC09:51
jjardon[m]Hi, is max-jobs part of the cache key?10:04
tristanjjardon[m], no.10:05
tristanjjardon[m], we have a weird little hacky mechanism to prevent that10:06
jjardon[m]mmm, thats bad10:06
tristanjjardon[m], see 'environment-nocache' setting in plugins like http://buildstream.gitlab.io/buildstream/elements/autotools.html#module-elements.autotools10:06
tristanjjardon[m], max-jobs should never be in the cache key10:07
jjardon[m]I think10:07
tristanjjardon[m], if you want to specify that the build can not handle parallelism in the build, use notparallel for that.10:07
tristanthose are different things10:08
jjardon[m]ah, there is a different option to disable paralellism; that makes things better10:08
jjardon[m]but what about this use case: https://gitlab.com/baserock/ybd/issues/24910:09
tristanjjardon[m], that is the use case which this covers10:10
jjardon[m]I mean, a system can build with 6 cores fine but fail with 8 cores10:10
tristanoh, that's not a use case.10:10
jjardon[m]not because parallelism problems, but because it gets out of RAM memory or something else10:11
tristanwell, you can file a bug, I dont think it's immensely high priority since the cases of this must be few, and can be mitigated with notparallel10:12
tristanalso, I'm not convinced that that out of resource conditions are things you want to fix with project configuration10:13
tristanrather, after typing that, I'm now quite convinced they are not the kind of thing you want to handle with project configuration10:13
*** jonathanmaw has joined #buildstream10:13
jjardon[m]rigth, I think having a nonparallel option cover most use cases; you are rigth that maybe project resources need to be fixed in another way. I will file a issue later so at least we have the problem into account10:15
tristanjjardon[m], yes please, always good to have on the radar10:15
tristanjjardon[m], what I mean by that is; the definition of how to build the project is not connected to the machine and resources used to build it10:16
tristanthus it should not differ for that sake10:16
tristanjjardon[m], plausible approaches include site related configuration in user config files; or crazy stuff like automated detection of OOM conditions causing the build to fail and retrying with less jobs10:17
tristanjjardon[m], also I think that is a very rare case you must have ran into10:19
tristannormally the OOM condition is not parallel, but at the final link stage of something huge10:19
jjardon[m]tristan: indeed; only for llvm compiling in ARM10:19
jjardon[m]tristan: I have to set max-jobs: 6; it will fail otherwise10:20
tristanheh10:20
jjardon[m](aarch64 mahine is 8 cores, 8GB RAM010:20
jjardon[m]context: https://gitlab.com/freedesktop-sdk/freedesktop-sdk/merge_requests/6010:20
tristanjjardon[m], you *can* work around it and force it directly in the build-commands though, fwiw10:21
tristannot really an ultimate solution for this vector of issue10:22
*** ssam2 has joined #buildstream10:22
jjardon[m]I think max-jobs is a bit cleaner, so I can do a conditional for only ARM arches and the build-commands will still be the same10:22
tristanbut not horrible either10:22
tristanmax-jobs is automatically set by buildstream10:22
tristanand not considered in cache key intentionally because of that.10:23
tristanSo that is afaics not an option in any scenario.10:23
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21710:59
gitlab-br-botbuildstream: merge request (sam/local-source-cachekey-fix->master: utils.py: Sort the results of list_relative_paths()) #216 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/21611:00
tristanssam2, thanks for comment, was going to ask if you'd like to look at it :)11:01
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key-backport->bst-1.0: Fix local source cache key backport) #218 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21811:09
tristanWell11:16
tristanThat didnt work11:16
tristanssam2, can you try the fix-local-source-cache-key branch ?11:24
tristanssam2, and just run ./setup.py test --addopts 'tests/cachekey/'11:24
tristanRight now I'm a bit at a loss, gitlab behaves differently, but gitlab is gitlab11:24
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21711:27
tristancertainly some randomness going on: https://gitlab.com/BuildStream/buildstream/pipelines/1598947711:27
tristanpytest_linux fails, pytest_unix passes11:27
tristanlets see how a single sorted list behaves https://gitlab.com/BuildStream/buildstream/pipelines/1599079111:28
tristanequally fails11:29
ssam2tristan, works for me locally11:35
ssam2this is bizarre11:35
tristanyes11:39
tristanthe unix thing is SKIPPED11:39
tristanthat's because cache key test will require ostree I guess11:39
tristanso its consistent, maybe11:40
tristanmaybe symlink issue I wonder... but that makes little sense...11:42
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21711:44
tristancrap ok... so this seems indeed to be a symlink issue :-S11:49
ssam2symlinks treated differently for different backends ?11:50
ssam2not sure i follow11:50
tristannope11:50
tristanWell, if I remove the symlink from the cache key test, it passes on gitlab11:50
tristanthat far is all I got11:50
tristanSo I have a feeling it might have to do with pytest-datafiles, but that hasnt had a release in a long time11:51
tristanbut... I mean; we must have symlinks on gitlab right ?11:51
tristanof course, or other tests would certainly be failing11:51
ssam2yeah...11:52
tristanhmm11:57
tristanfails when testing local file with a symlink and not using datafiles11:57
tristanpasses when removing the symlink, so that's not the issue11:57
tristanssam2, Ok - I can testify that the cache key being generated on gitlab reads the content of the file and reports the hash for the symlink, instead of reporting the symlink12:31
* tristan added print statements and collected output from failed run on gitlab12:31
tristanAnd the datafiles change did not change that12:32
tristanAh12:33
tristanFound the issue, crap that was difficult.12:33
tristanssam2, it's fraking `./setup.py sdist` that is screwing with us, not gitlab12:34
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21712:45
tristanssam2, what python version do we have on the gitlab test docker image ?12:58
ltujuergbi, are the changes to element state handling dependent on recursive pipelines? so does recursive pipelines have to land first?13:02
juergbiltu: no, no direct dependency13:05
juergbielement state branch builds upon master13:05
ltuok, thanks for the info13:08
*** xjuan has joined #buildstream13:14
ssam2tristan, it's Python 3.6.213:22
ssam2tristan, Fedora 26 base13:22
ssam2tristan, latest images are Fedora 27 based, but buildstream's .gitlab-ci.yml isn't updated to use the latest image13:23
ssam2also, that sounds hideous about sdist13:23
tristanssam2, it's a regression in setuptools :-S13:25
tristannot to mention underspecified and never worked consistently13:25
ssam2of course13:25
tristanI'm kicking it in the balls with a `os.unlink() && os.symlink()` directly in the cachekey test13:26
ssam2seems reasonable13:26
tristanWhile I'm at it; we can consider the link target as a part of the cache key13:26
ssam2yeah, we should do that13:26
tristanI guess we break cache keys for this fix anyway13:26
ssam2yeah, but anyone using 'local' source will find they're already broken13:27
tristanRight13:28
tristanAnd this is going onto bst-1.0 also13:28
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21713:34
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key-backport->bst-1.0: Fix local source cache key backport) #218 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21813:36
jonathanmawtristan: I've put some thought into the error handling problem you pointed out in https://gitlab.com/BuildStream/buildstream/merge_requests/18113:58
jonathanmawin my reply, I'm suggesting that I should go to various places that ultimately call stage_dependency_artifacts and make sure I have a case to catch exceptions and redirect them as appropriate.14:00
jonathanmawthough perhaps I've misunderstood something and there's a better way to go about it.14:00
*** tristan has quit IRC14:01
*** tristan has joined #buildstream14:04
*** xjuan has quit IRC14:29
tristanssam2, do you have something I can use to easily test this multiple artifact cache initialization scenario ?14:56
*** jonathanmaw has quit IRC14:56
ssam2depends if you like faffing with docker14:57
tristanoh crap14:57
ssam2docker pull buildstream/artifact-cache:latest; docker run -i -t buildstream/artifact-cache:latest14:57
ssam2oh, with also --publish 8080:8080 --publish 22200:2220014:57
tristanso your docker environment provides something with multiple remote caches ?14:57
ssam2no, one cache14:57
ssam2but you can set up several14:58
ssam2its not perfect though, i'm wrangling with it right now14:58
tristanI mean, I guess it's not correct to test with the local file:// cache14:58
ssam2yeah14:58
tristanor is this the branch that changes all that ?14:58
ssam2alternately you can use the gnome7 cache and the baserock.org cache14:58
*** jonathanmaw has joined #buildstream14:58
tristanAh, that's an idea14:58
ssam2this branch doesn't remove the file:// cache stuff14:59
ssam2not sure what happened to that actually; maybe juergbi is sat on it waiting for this change ?14:59
tristanyeah, I think it's somehow part of juergbi's recursive pipelines still14:59
tristanprobably14:59
tristanbut it's something that happened :)14:59
juergbiyes, top commit of recursive pipelines15:01
juergbi(doesn't remove file: handling but uses the pushreceive code path for that as well)15:01
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key->master: Fix local source cache key) #217 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/21715:03
gitlab-br-botbuildstream: merge request (fix-local-source-cache-key-backport->bst-1.0: Fix local source cache key backport) #218 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/21815:05
tristanssam2, I guess this is the baserock cache right ? https://gitlab.com/baserock/definitions/blob/master/project.conf#L12915:05
ssam2yyyeah15:06
tristanssam2, so iiuc, your branch continues to support a single `artifacts:` dict as written there, and also allows it to be a list ?15:06
ssam2yeah15:06
tristannice15:07
tristandont sound so sure about that URL :)15:07
ssam2actually that's some wayland bug that causes keys to get stuck down while i'm typing15:07
ssam2it can produce much more ridiculous results at times :-)15:07
tristanhaha15:08
ssam2wrt. to parallel remote init, if we can get it working we can also do multiple pushes in parallel15:08
ssam2will be more or less the same thing15:09
ssam2but i'll do sequential pushes initially, i don't want to fall into the same rabbit hole as before15:09
tristantechnically, we *do* multiple pushes in parallel15:10
tristanperhaps it would be simpler to do that were they to be scheduled separately15:11
ssam2it might, yeah15:11
ssam2slightly awkward that we have the single ArtifactCache object that wraps all the remotes15:11
ssam2but, we could have some way of creating a push job for a specific remote15:12
tristanit would require quite some churn anyway15:12
tristanI think it's less of a concern than startup15:13
tristanthe current wait time when you have to download that summary is already horrendous15:13
tristanwell, somewhere before horrendous, but beyond scratching your head and wondering why we're still waiting15:14
gitlab-br-botbuildstream: issue #185 ("max-jobs is not part of the cache key: Think in a way on how to handle builds that can be build in 6 cores but not in 8, because memory exhaustion or other reasons") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/18515:14
jonathanmawhrm, there seems to be an error in the instructions on how to install buildstream - we're telling people with debian stretch to add jessie-backports to their sources list, then install ostree from stretch-backports15:15
ssam2tristan, i think most people are only going to use one cache, though15:15
jonathanmawI'm going to make a MR to change that to stretch-backports, as that actually worked for me.15:16
ssam2tristan, what might be nicer is if we could somehow initialize the remote caches in parallel with loading and resolving the pipeline15:16
ssam2tristan, not sure how we'd actually do that though15:16
ssam2jonathanmaw, sounds good15:16
tristanssam2, not possible really15:16
*** mcatanzaro has joined #buildstream15:16
tristanssam2, what is present in the remote cache informs the local build plan (and allows us to chop out entire portions of it)15:17
gitlab-br-botbuildstream: merge request (jonathan/fix-stretch-install->master: Fix inconsistency in debian stretch install instructions) #219 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21915:17
*** jennis has joined #buildstream15:18
* tristan not even gonna look at 21915:18
tristanjust merge15:18
ssam2tristan, rtue15:19
tristanso, this is the relevant part of the log with GNOME cache + baserock cache:15:20
tristan[--:--:--] START   Initializing remote caches15:20
tristan[00:00:44] SUCCESS Initializing remote caches15:20
tristanI guess it pushes headscratchingly long -> horrendously long in this case hehe15:20
ssam2that is nasty15:20
ssam2is your connection really slow?15:20
ssam2both caches have fairly large summary files I imagine15:21
tristanMy connection is one of the fastest on the planet15:21
ssam2ok15:21
tristandoesnt change that I'm still ~350ms round trip from manchester15:21
ssam2for me it takes a few seconds there15:21
ssam2is this with SSH or HTTP ?15:21
ssam2with HTTP/S there's really not much protocol overhead, we're simply downloading one file in the usual way15:22
ssam2with the SSH protocol there's more overhead, we do the SSH handshake, then ask where the pull URL is, /then/ do the HTTP/S request15:22
ssam2latency could perhaps start to bite a lot in the 2nd case15:22
tristanssam2, remember that pushing a base system artifact went from > 24hrs to about 8hrs by dropping sshfs (round trips for every ostree fs access syscall), and then it went from ~8hrs to about 20min after serializing the transfers with python's TarStream15:23
ssam2sure15:23
ssam2that said, if this is SSH protocol only, it's a pretty rare use case15:24
ssam2i don't see many situations where individual developers should be writing to project-wide caches15:24
ssam2if are writing to a site-specific cache or whatever, you shouldn't have latency issues15:24
tristanremoving the ssh from my ~/.config/buildstream.conf brings it down to around 15 seconds15:25
ssam2and if it's a project wide cache, you should leave the CI to do its job15:25
ssam2ok, which is still not OK for each startup15:25
ssam2but better15:25
tristanalso, I'm now uncertain about how the old user configuration plays nicely with the new project configuration15:25
tristanHow is it that my local config gets to override the https cache ?15:25
tristanor rather, what is the expected result ?15:26
ssam2i need more specifics to answer that15:26
tristanssam2, so BEFORE = project.conf declares "the cache" and buildstream.conf can override "the cache" on a per project basis15:27
tristanssam2, what happens in the regular case, where I dont change my buildstream.conf and I update to a new project.conf ?15:27
tristanI.e. the expectation in BEFORE, is that I override the project15:27
tristanI guess it can have few different answers, one of them is, all of the caches listed in the project.conf are overridded by my user config ?15:28
tristani.e. it took 44 seconds to query only 1 cache over ssh ?15:28
ssam2the only thing that this branch changes is what 'override' means, effectively15:28
ssam2before, if you had a higher priority cache, lower priority caches would be totally ignored15:29
ssam2now, all the caches in your config go in a list and we talk to all of them15:29
tristanSo 3 caches15:29
ssam2in the documented priority order15:29
ssam2yeah15:29
ssam2we did discuss in the original feature proposal having some way to 'remove' a cache from the list15:29
ssam2and decided against it15:29
tristanyeah, will probably be interesting but not necessary to land at once15:30
tristanssam2, you cannot put an exception in a Queue()15:37
ssam2?15:38
tristanwe never pass exceptions between processes, they tend to refer to almost the whole program15:38
ssam2i'm pretty sure we already do that in master15:38
tristannope15:38
tristancertainly not15:38
ssam2um, we do15:38
ssam2in the fetch_remote_refs() method of OSTreeCache15:39
tristanthen that is a bug15:39
ssam2ok15:39
tristanluckily, we dont hit the exception15:39
ssam2how should we propagate errors from the child then ?15:39
tristanfor child tasks we take special care, we create a string for the exception and pass a Message() to the parent to print in the UI15:40
tristani.e. using traceback to format it15:40
ssam2ah, ok15:40
tristanfor ostree specific hacks that have been inserted, we dont have policy for this15:40
ssam2*perhaps* that's why i was getting weird errors here in the past15:40
ssam2also, FWIW15:41
ssam2[--:--:--] START   Initializing remote caches15:41
ssam2Got pull url https://ostree.baserock.org/cache/ for push url https://ostree.baserock.org/cache/15:41
ssam2Got pull url http://172.17.0.2:8080/artifacts/ for push url ssh://artifacts@172.17.0.2:22200/artifacts/15:41
ssam2Got pull url http://172.17.0.2:8080/artifacts/ for push url ssh://artifacts@172.17.0.3:22200/artifacts/15:41
ssam2[00:00:13] SUCCESS Initializing remote caches15:41
ssam2there's 15 seconds contacting 3 caches ... 2 of which are on /my local machine/15:41
ssam2well, 13 seconds15:41
tristanthis looks like it has other issues too, regardless of parallelism, I dont think we're handling ^C properly here either15:41
tristan(a think very likely to happen when waiting 13 seconds)15:42
tristanSo, it looks like there are two avenues to follow; the irresponsible one is to say "There is problems with ostree initializations from before, this adds more of them, and we never had a strategy for handling it right - so lets fix that separately"15:44
tristanThat has the benefit of unblocking other branches15:44
tristanAnd the downside that it will never be fixed15:44
tristanThe other is to grok the scheduler code a bit, and properly schedule these initializations in child tasks which are not really well handled at all first15:45
tristanssam2, one take home here is that now we understand better what is causing https://gitlab.com/BuildStream/buildstream/issues/14115:46
ssam2right15:47
ssam2yeah, if using the scheduler is possible that would be good15:47
ssam2my previous attempt to solve this involved effectively implementing a new one, which was messy and also broken15:47
ssam2i don't see much harm in splitting that work out beyond the risk that i might get immediately whisked onto something else and nobody ever gets the chance to look at it15:48
ssam2it's not like we're introducing a regression though, as with only one cache the new branch will behave the same as master15:49
ssam2i guess i'll try to finish the other changes without tackling that, but go straight onto the scheduler stuff without declaring the work 'finished'15:49
ssam2but leaving MR !166 in a state where it could be merged as-is15:50
gitlab-br-botbuildstream: merge request (juerg/element-state->master: WIP: element state updates) #215 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21515:50
tristanWell, we're amplifying 141 certainly15:50
ssam2surely only if there's > 1 cache configured ?15:50
tristanssam2, My worry about the merge now fix later approach is indeed, that those who are funding developer hours want features, and this might be my only chance to make sure we also create decent software in the process15:51
tristanlemme smoke on it at least hehe :)15:53
tristanit does only amplify 141 in the case of > 1 cache, and also it makes things unbearably slow under the same condition15:54
ssam2probably enough that those who requested the feature will find it annoying to use15:54
ssam2so let's have a go at fixing it15:55
ssam2if i fall down another rabbit hole and don't get anywhere by the end of the week, we can think again15:55
ssam2but using the scheduler and not trying to return exceptions in a queue may improve matters15:55
gitlab-br-botbuildstream: merge request (juerg/element-state->master: WIP: element state updates) #215 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/21516:01
* tristan returns from smoke...16:04
tristanssam2, I think we can start with avoiding serializing the exception, and just serialize the formatted one, i.e: str(e)16:05
tlater/me wonders what the difference between these two for our tests is:16:06
tlaterprintf "${ECHO_TEST_KEY}\n"16:06
tlaterecho ${ECHO_TEST_KEY}16:06
tristanmy quick attempt at parallelizing them with the same code resulted in a zombie child + deadlock parent16:06
tristantlater, doesnt look particularly different16:07
tlaterReally curious why we have two test cases then16:07
tristanwhich16:07
tristantlater, ?16:08
tlaterhttps://gitlab.com/BuildStream/buildstream/blob/master/integration-tests/shell-test/run-shell-test.sh#L5016:08
tlaterI can't really see the difference between the first and last case there16:08
tlaterThey seem to be testing the exact same thing16:08
tlaterWell, apart from the different executables16:08
tristantlater, originally we assumed that a runtime has a shell; and we passed strings to an assumed to exist interpretor in the runtime16:11
tlaterI can see that, that's why we test echo vs /bin/echo, I assume?16:11
tristanwhich is a pitfall which is decent to avoid falling into; but it looks like this test does not guarantee it, even16:11
tlaterActually, no that doesn't guarantee t16:13
tlater*it16:13
tlaterHm, a good test for that would be running with a base platform that actually lacks a shell16:14
* tlater writes one16:14
tristantlater, perhaps, but keep in mind both echo and printf are in fact files in PATH16:15
tristantlater, sounds like a good test, though16:15
tlaterYeah, it seems a little pointless to have both an echo and printf test16:15
tristantlater, I wouldnt block your branch on adding it, but nice to have16:15
tlaterI'd also like to test the various std* redirections you can make with the shell16:15
tlaterIf only to confirm the suite is working now16:15
* tlater thinks this shouldn't take too long anyway, and is close to finishing16:16
tristanssam2, this fetch_remote_refs() method... is the one you replace in the branch right ?16:16
*** xjuan has joined #buildstream16:16
ssam2yeah16:16
* tristan takes a stab at 141 on your branch16:19
tristanOk that was easy enough to fix16:25
tristanssam2, alright so I can at least reduce this to; we just take a damn long time to initialize16:26
tristanand also close #14116:26
ssam2progress!16:26
tristanssam2, other than this; how stands the branch in readiness, the other stuff is all taken care of yes ?16:26
tristan`push:` flag16:26
ssam2i'm nearly done with that16:27
ssam2not yet pushed16:27
ssam2that said, it'll do multiple pushes in sequence in a single job16:27
tristanAnd I think there was a private function in utils lacking an underscore16:27
tristanssam2, that is much less of a concern to be honest16:27
ssam2right16:27
ssam2it seems to be working, i'm just retesting, updating docs etc.16:28
tristanssam2, at least at that point; we're doing a ton of parallel work already; and we're not blocking on the built artifact locally to build reverse deps16:28
ssam2yeah16:28
tristanso, at push time, the performance could be improved when say, you just want to explicitly push one artifact to all your caches16:28
tristanbut meh - still startup being slow annoying and worth fixing, but I guess in the current environment we should not block on it16:29
ssam2good or bad phrasing: "You can enable this on a cache-by-cache basis ..."16:34
tristanssam2, so I just added couple comments regarding how to handle that exception16:36
tristanssam2, and I pushed this: https://gitlab.com/BuildStream/buildstream/commit/da6cc4fea16d6ac07300aec6509292fba373e0c9 which I'd like you to cherry-pick on top of your branch after you've done your fixes16:36
ssam2will d16:37
ssam2o16:37
tristanthats on the tip of a branch called tristan/multiple-caches fwiw16:37
tristanssam2, "... on a per-cache basis ..." I think is better16:38
tristanor `per artifact cache` if specificity is needed, probably that is in context of your paragraph though :)16:38
gitlab-br-botbuildstream: merge request (jonathan/fix-stretch-install->master: Fix inconsistency in debian stretch install instructions) #219 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/21916:39
tristansuspending buildstream with ^Z also works nicely while fetching the artifact lists16:41
tristangood good16:41
* tristan notes it would be really great to have interactive tests too16:43
tristanterminal behavior, is mostly up to developers to ensure works goddamn well before committing at this point16:43
tristanand we fail at that16:43
tristan(well, we come close, but fail)16:44
tlaterHm, I wonder how interactive tests would work16:44
tristantlater, yeah :)16:44
* tlater guesses there are few frameworks for this stuff, but there might be something16:44
tlaterThis is python after all16:44
tristanI think pytest may have stuff builtin16:44
tristanwhen running `bst build --track-all <element>` I'm sometimes getting bad results with ^C now16:45
tristanthis seems new16:45
ssam2i think I had issues with that before16:46
* tlater thinks that may be a bug filed a few months ago16:46
ssam2up to and including a deadlock, although that's element-state related no doubt16:47
tristanI need to make sure that is not from the branch...16:47
tlaterI was waiting for the element state branch to be fixed to check it again, which I think should land soon?16:47
*** noisecell has quit IRC17:02
tristanverified that this is also happening with master17:04
*** mcatanzaro has quit IRC17:08
*** mcatanzaro has joined #buildstream17:08
*** jude has quit IRC17:18
gitlab-br-botbuildstream: merge request (tristan/fix-cache-init->bst-1.0: _artifactcache/ostreecache.py: Handle ^C and shutdown child task when initializing cache) #220 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/22017:18
tristangah, ssam2; lemme give you a different commit to cherry-pick... mine has a bogus import17:23
gitlab-br-botbuildstream: merge request (tristan/fix-cache-init->bst-1.0: _artifactcache/ostreecache.py: Handle ^C and shutdown child task when initializing cache) #220 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/22017:25
*** jude has joined #buildstream17:26
tristanssam2, updated on tristan/multiple-caches: https://gitlab.com/BuildStream/buildstream/commit/0bd2e3b1fa0df81e0f9b00eaee08a877b449984717:27
tristanI was thinking of using sys.exit(-1) but then realised raise was correct, forgot to remove sys17:27
ssam2go tit17:28
ssam2ah17:28
ssam2got it17:28
ssam2not sure i will get this done today, I'm not really happy with the tests now17:28
tristanssam2, I like your wayland bugs :D17:28
ssam2that might have been a finger and thumbs issue :-)17:29
ssam2using real pushes and pulls to test that we combined the list of artifact caches correctly is not really that great17:30
ssam2without having real caches17:30
ssam2the addition of the 'push' flag just makes the current push/pull tests even less suitable for what i think we actually want to test, which is that combining the list of artifact caches from the different config files is working17:31
ssam2then, we also want to test that pushes and pulls actually work17:31
ssam2but i'm not liking trying to both at the same time17:31
ssam2*to test both17:31
ssam2maybe merging in juergbi's changes to this will help17:32
*** jude has quit IRC17:45
*** ssam2 has quit IRC17:53
*** valentind has joined #buildstream18:23
gitlab-br-botbuildstream: merge request (tristan/fix-cache-init->bst-1.0: _artifactcache/ostreecache.py: Handle ^C and shutdown child task when initializing cache) #220 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/22018:42
*** valentind has quit IRC18:52
*** valentind has joined #buildstream18:59
*** ernestask has quit IRC19:21
*** valentind has quit IRC19:35
*** valentind has joined #buildstream19:51
*** xjuan has quit IRC20:23
*** jonathanmaw has quit IRC21:23
*** tristan has quit IRC22:01
*** mcatanzaro has quit IRC22:02
*** valentind has quit IRC22:07
*** jennis has quit IRC23:52
*** paulsherwood has quit IRC23:52
*** nexus has quit IRC23:52
*** tlater has quit IRC23:52
*** tiago has quit IRC23:52
*** gitlab-br-bot has quit IRC23:52
*** lantw44 has quit IRC23:52
*** saxa has quit IRC23:52
*** ptomato[m] has quit IRC23:52
*** waltervargas[m] has quit IRC23:52
*** ernestask[m] has quit IRC23:52
*** m_22[m] has quit IRC23:52
*** pro[m] has quit IRC23:52
*** mrmcq2u[m] has quit IRC23:52
*** cgmcintyre[m] has quit IRC23:52
*** mattiasb has quit IRC23:52
*** kailueke[m] has quit IRC23:52
*** csoriano has quit IRC23:52
*** ironfoot has quit IRC23:52
*** jjardon[m] has quit IRC23:52
*** bochecha has quit IRC23:52
*** jennis has joined #buildstream23:53
*** paulsherwood has joined #buildstream23:53
*** nexus has joined #buildstream23:53
*** tlater has joined #buildstream23:53
*** tiago has joined #buildstream23:53
*** ernestask[m] has joined #buildstream23:53
*** saxa has joined #buildstream23:53
*** ptomato[m] has joined #buildstream23:53
*** waltervargas[m] has joined #buildstream23:53
*** m_22[m] has joined #buildstream23:53
*** pro[m] has joined #buildstream23:53
*** mrmcq2u[m] has joined #buildstream23:53
*** cgmcintyre[m] has joined #buildstream23:53
*** mattiasb has joined #buildstream23:53
*** kailueke[m] has joined #buildstream23:53
*** gitlab-br-bot has joined #buildstream23:53
*** bochecha has joined #buildstream23:53
*** lantw44 has joined #buildstream23:53
*** csoriano has joined #buildstream23:53
*** ironfoot has joined #buildstream23:53
*** jjardon[m] has joined #buildstream23:53
*** irc.acc.umu.se sets mode: +o ironfoot23:53

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!