-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Widen setindex_shape_check method signature #13252
Conversation
a03d5a3
to
f9e2826
Compare
This removes the restriction on setindex_shape_check that the index lengths must all be Int, allowing data structures to return non-Int lengths (e.g., `UInt(1):UInt(2)` or `big(1):big(2)`). Fixes #13250.
f9e2826
to
e5b3cc6
Compare
Widen setindex_shape_check method signature
I believe this may be causing reducedim test failures? I'm going to remove this from the backport list in the meantime until that can be sorted out. |
10 wasn't enough apparently, still collecting more runs |
Still seeing this intermittently on buildbots. Can sometimes take many repetitions of running the tests to make happen locally, so there's something nondeterministic about it. I'm reasonably sure it was caused by this, unless there was something slightly earlier that also could have changed anything about reducedim?
|
I'm at a loss here. I cannot see any way in which this should change generated code… at all. So I can't even form any theories as to what might be going on. We could blindly try changing the signature to something like |
In the build range from 2515 (first failure on this buildbot) to 2552 (last successful build, that buildbot needs ssl-dev installed to pass after the libgit2 merge) http://buildbot.e.ip.saba.us:8010/builders/build_ubuntu14.04-x64?numbuilds=100, we had 4 instances of this failure http://buildbot.e.ip.saba.us:8010/builders/build_ubuntu14.04-x64/builds/2515/steps/shell_2/logs/stdio This buildbot shows slightly more: http://buildbot.e.ip.saba.us:8010/builders/build_centos7.1-x64?numbuilds=100 (and a few unrelated failures). I'm not positive whether it was this change that caused the problem, but it started happening very close to the time this was merged. |
I can see no reason for this change to cause non-deterministic test failures. Possibly it could somehow uncover some other latent problem. Whatever is causing the test failure would be good to track down though, but so far I've not been able to reproduce it locally. The actual failure is weird (well, maybe to be expected when it's non-deterministic). If I follow the traces and code correctly the failing test case is line 127 in
When it reaches
where
Since this makes |
I am confused immensely, and may have been wrong to blame this commit. The bad commit below reproduces the error within at most a few dozen runs, the good commit can run overnight repeatedly for a few days, probably 100 or more successes: bad: [6b749dd] Move docsystem to end of sysimg.jlgit bisect bad 6b749dd good: [b939592] 4-space indent in basedocsgit bisect good b939592 first bad commit: [6b749dd] Move docsystem to end of sysimg.jl |
This removes the restriction on setindex_shape_check that the index lengths
must all be Int, allowing data structures to return non-Int lengths (e.g.,
UInt(1):UInt(2)
orbig(1):big(2)
). Fixes #13250.