dlang / ci

dlang CI testing pipelines
https://buildkite.com/dlang
Boost Software License 1.0
13 stars 29 forks source link

ggplotd has a random failure #322

Open wilzbach opened 6 years ago

wilzbach commented 6 years ago
ggplotd 1.1.6: building configuration "ggplotd-test-default"...
Linking...
Running ./ggplotd-test-default 
Random seed MCMC: 54321
Random seed MCMC: 54321
core.exception.AssertError@/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/range/package.d(6113): Assertion failure
----------------
??:? _d_assertp [0x5f131d75]
/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/range/package.d:6113 pure ref @safe std.range.iota!(double, double, double).iota(double, double, double).Result std.range.iota!(double, double, double).iota(double, double, double).Result.__ctor(double, double, double) [0x5ee3bb78]
/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/range/package.d:6168 pure @safe std.range.iota!(double, double, double).iota(double, double, double).Result std.range.iota!(double, double, double).iota(double, double, double) [0x5ee3ba0e]
source/ggplotd/stat.d:566 std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6!(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda6(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda5, std.range.ZipShortest!(1, double[], double[]).ZipShortest).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6!(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda6(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda5, std.range.ZipShortest!(1, double[], double[]).ZipShortest).MapResult).Result ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6!(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda6(std.typecons.Tuple!(double, "x", double, "y").Tuple[]) [0x5f0fd7fc]
/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/algorithm/iteration.d:568 @property std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6!(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda6(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda5, std.range.ZipShortest!(1, double[], double[]).ZipShortest).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6!(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda6(std.typecons.Tuple!(double, "x", double, "y").Tuple[]).__lambda5, std.range.ZipShortest!(1, double[], double[]).ZipShortest).MapResult).Result std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult.back!().back() [0x5f101b57]
/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/algorithm/iteration.d:2673 ref std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).Result std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).Result.__ctor(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).M... [0x5f016102]
/var/lib/buildkite-agent/builds/dime-2/dlang/druntime/build/distribution/bin/../imports/std/algorithm/iteration.d:2646 std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).Result std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult) [0x5f015fe5]
source/ggplotd/stat.d:533 std.algorithm.iteration.joiner!(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).joiner(std.algorithm.iteration.MapResult!(ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).__lambda6, std.typecons.Tuple!(double, "x", double, "y").Tuple[][]).MapResult).Result ggplotd.stat.statDensity2D!(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes).statDensity2D(ggplotd.aes.Aes!(double[], "x", double[], "y").Aes) [0x5f0fd191]
source/ggplotd/stat.d:604 void ggplotd.stat.__unittest_L590_C1() [0x5f0cff9f]
??:? void ggplotd.stat.__modtest() [0x5f101b86]
??:? int core.runtime.runModuleUnitTests().__foreachbody2(object.ModuleInfo*) [0x5f15d23b]
??:? int object.ModuleInfo.opApply(scope int delegate(object.ModuleInfo*)).__lambda2(immutable(object.ModuleInfo*)) [0x5f129ec2]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))).__foreachbody2(ref rt.sections_elf_shared.DSO) [0x5f13985d]
??:? int rt.sections_elf_shared.DSO.opApply(scope int delegate(ref rt.sections_elf_shared.DSO)) [0x5f1399f0]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))) [0x5f1397e9]
??:? int object.ModuleInfo.opApply(scope int delegate(object.ModuleInfo*)) [0x5f129e99]
??:? runModuleUnitTests [0x5f15d011]
??:? void rt.dmain2._d_run_main(int, char**, extern (C) int function(char[][])*).runAll() [0x5f1346e0]
??:? void rt.dmain2._d_run_main(int, char**, extern (C) int function(char[][])*).tryExec(scope void delegate()) [0x5f134667]
??:? _d_run_main [0x5f1345cf]
??:? main [0x5edb5735]
??:? __libc_start_main [0x5cee72e0]
1/19 unittests FAILED
Program exited with code 1
🚨 Error: The command exited with status 2
^^^ +++
^^^ +++

From: https://buildkite.com/dlang/druntime/builds/441#03a73d78-e28c-431f-a5f8-eacb8e293c1a

jacob-carlborg commented 6 years ago

Is this a CI infrastructure bug since it's created in this repository?

wilzbach commented 6 years ago

Not sure, but I just wanted to log it here so that it's known that it appears from time to time. If it appears more often, we should have a more detailed look at this. If this doesn't appear in the next two months again, feel free to close.

wilzbach commented 6 years ago

Happened again: https://buildkite.com/dlang/dmd/builds/2062#435f8561-bf14-4f26-9aa7-dd2200428c1e

Though I think that one was just running out of memory.

MartinNowak commented 5 years ago

I think this is 18227 – Assertion failure in iota for floating point and it was originally worked around by pinning the random seed in example.d. We just need another fixed seed for dstats.random used in ggplotd/stats.d (https://github.com/BlackEdder/ggplotd/blob/b2e473f939de334d034996615e0cd35f1f4ca7c9/source/ggplotd/stat.d#L541).