-
Notifications
You must be signed in to change notification settings - Fork 110
Create a separate CI job for race detection #741
Comments
On Dell XPS 13 9350 (Intel i7-6560U CPU @ 2.20GHz, 16GB RAM) Without Race Detection
Note: 40% of the time is spent with With Race Detection
|
Test fails unreliably when run with `-race` flag. As waitGC() does not work as expected, it might just continue (not block) if GC is not running already. We might end up with or without a chunk, depending on goroutine scheduling. As localstore rewrite is at the finish line and this blocks #741 => Skip.
By adding the following code snippet to our Note: A Cron job has to be manually added on Travis UI in the settings menu.
However the job hits Travis' memory limitations. As the race detector can increase the memory consumption by 10x. Questions
|
|
See #1205 for the remaining issues. |
We had more than a dozen of Data Races in our code base. Go has a nice builtin race detector tool. So we should have a CI job that at least notifies us timely if we introduce a new race. 1st let's just have a daily CRON job triggered on ethersphere/go-ethereum. Later as the job gets stable, we can start using it for ethersphere PRs. resolves: #741
We want to keep Swarm's code race free. For that we want to run race detection at least every day on Swarm's code. Go's race detection is nice and neat, but it can increase the test run time significantly (~10x). => We need a separate job for
go test -race
.Note: this assumes the code base is race free so we don't just spam people with an always failing job.
Questions:
Note: If the run time is sufficiently low we might want to run race detection for every commit.
Later we might want to run long running tests and benchmarks with the same methods.
(benchmarks: How to keep the tests self-checking?)
The text was updated successfully, but these errors were encountered: