Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Replace O(N) lookup with O(1) for task outputs (7.8.x) #3259
This speeds up suite validation significantly for tasks with
Using the builtin set should bypass any deprecated libraries in
These changes closes #3255
The recent Travis build should contain the tests that failed, and their output - though I normally struggle to find what went wrong/where. What I normally do, when a functional test fails for my change, is try to locate the test that is failing in the Travis log, then run locally with
If the test passes locally, then it probably means it is a flaky test that is failing for some reason unrelated to your change. In this case normally we kick Travis until is passes the build, or the reviewers simply ignore the Travis output.
@oliver-sanders - thanks! Those profiling numbers are consistent with what we hoped to see. We have a task that performs an output for each hour the forecast model proceeds through - this didn't cause problems in our NWP suites but ground validation (and therefore the suite server) to a halt once we started running 45 day or 90 day forecasts.
when you say "re-raise against master", are you suggesting to make this change in master (i.e. Cylc 8) as well? If so, that'll take a little longer as we'll need to get up to speed with how things work in the new version. A quick glance at master shows that at least some of this won't be a drop-in replacement. I'm happy to do it, but it'll be a while: if it's desired sooner and someone else is available I have no issues with them taking it.
Test failures unrelated.
I have just tried cherry-picking the 2 changes in this branch to port to Cylc-8 master. It is a straightforward merge with no conflict. Resulting branch:
Build OK as well:
Do you want me to raise the PR against master?