Skip to content
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

broadcast test failure #18577

Closed
Sacha0 opened this issue Sep 19, 2016 · 6 comments
Closed

broadcast test failure #18577

Sacha0 opened this issue Sep 19, 2016 · 6 comments

Comments

@Sacha0
Copy link
Member

Sacha0 commented Sep 19, 2016

New broadcast test failure on master, specifically on

julia> versioninfo()
Julia Version 0.6.0-dev.693
Commit 2193638* (2016-09-18 19:22 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin15.5.0)
  CPU: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, ivybridge)

Also evident in logs from #18566, #18571, #18575, and #18576. Perhaps caused by an interaction between #16986 and some change merged after #16986's last CI run? The failure (locally):

julia> Base.runtests("broadcast")
     * broadcast            Error During Test
  Test threw an exception of type ErrorException
  Expression: broadcast(+,1.0,(0,-2.0)) == (1.0,-1.0)
  type #+ has no field contents
   in #35 at ./broadcast.jl:260 [inlined]
   in _ntuple at ./tuple.jl:101 [inlined]
   in ntuple(::Base.Broadcast.##35#36, ::Type{Val{2}}) at ./tuple.jl:94
   in macro expansion at ./broadcast.jl:260 [inlined]
   in broadcast_tup(::Base.#+, ::Tuple{Float64,Tuple{Int64,Float64}}, ::Type{Val{2}}, ::Int64) at ./broadcast.jl:259
   in broadcast_c(::Function, ::Type{Tuple}, ::Float64, ::Vararg{Any,N}) at ./broadcast.jl:269
   in broadcast(::Function, ::Float64, ::Tuple{Int64,Float64}) at ./broadcast.jl:340
   in include_from_node1(::String) at ./loading.jl:541
   in include_from_node1(::String) at /Users/sacha/pkg/julia/usr/lib/julia/sys.dylib:?
   in macro expansion at ./util.jl:232 [inlined]
   in runtests(::String) at /Users/sacha/pkg/julia/usr/share/julia/test/testdefs.jl:7
   in (::Base.##594#595{#runtests,Tuple{String},Array{Any,1}})() at ./multi.jl:1034
   in run_work_thunk(::Base.##594#595{#runtests,Tuple{String},Array{Any,1}}, ::Bool) at ./multi.jl:1005
   in #remotecall_fetch#599(::Array{Any,1}, ::Function, ::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1059
   in remotecall_fetch(::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1059
   in #remotecall_fetch#603(::Array{Any,1}, ::Function, ::Function, ::Int64, ::String, ::Vararg{String,N}) at ./multi.jl:1084
   in remotecall_fetch(::Function, ::Int64, ::String, ::Vararg{Any,N}) at ./multi.jl:1084
   in macro expansion at /Users/sacha/pkg/julia/usr/share/julia/test/runtests.jl:44 [inlined]
   in (::##15#22{Array{Any,1},UInt64})() at ./task.jl:363
ERROR: LoadError: LoadError: There was an error during testing
 in record(::Base.Test.FallbackTestSet, ::Base.Test.Error) at ./test.jl:397
 in do_test(::Base.Test.Threw, ::Expr) at ./test.jl:281
 in include_from_node1(::String) at ./loading.jl:541
 in include_from_node1(::String) at /Users/sacha/pkg/julia/usr/lib/julia/sys.dylib:?
 in macro expansion at ./util.jl:232 [inlined]
 in runtests(::String) at /Users/sacha/pkg/julia/usr/share/julia/test/testdefs.jl:7
 in (::Base.##594#595{#runtests,Tuple{String},Array{Any,1}})() at ./multi.jl:1034
 in run_work_thunk(::Base.##594#595{#runtests,Tuple{String},Array{Any,1}}, ::Bool) at ./multi.jl:1005
 in #remotecall_fetch#599(::Array{Any,1}, ::Function, ::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1059
 in remotecall_fetch(::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1059
 in #remotecall_fetch#603(::Array{Any,1}, ::Function, ::Function, ::Int64, ::String, ::Vararg{String,N}) at ./multi.jl:1084
 in remotecall_fetch(::Function, ::Int64, ::String, ::Vararg{Any,N}) at ./multi.jl:1084
 in macro expansion at /Users/sacha/pkg/julia/usr/share/julia/test/runtests.jl:44 [inlined]
 in (::##15#22{Array{Any,1},UInt64})() at ./task.jl:363
while loading /Users/sacha/pkg/julia/usr/share/julia/test/broadcast.jl, in expression starting on line 337
 in #remotecall_fetch#599(::Array{Any,1}, ::Function, ::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1060
 in remotecall_fetch(::Function, ::Base.LocalProcess, ::String, ::Vararg{String,N}) at ./multi.jl:1059
 in #remotecall_fetch#603(::Array{Any,1}, ::Function, ::Function, ::Int64, ::String, ::Vararg{String,N}) at ./multi.jl:1084
 in remotecall_fetch(::Function, ::Int64, ::String, ::Vararg{Any,N}) at ./multi.jl:1084
 in macro expansion at /Users/sacha/pkg/julia/usr/share/julia/test/runtests.jl:44 [inlined]
 in (::##15#22{Array{Any,1},UInt64})() at ./task.jl:363
 in sync_end() at ./task.jl:314
 in macro expansion at ./task.jl:330 [inlined]
 in (::##11#18)() at /Users/sacha/pkg/julia/usr/share/julia/test/runtests.jl:36
 in cd(::##11#18, ::String) at ./file.jl:69
 in include_from_node1(::String) at ./loading.jl:541
 in include_from_node1(::String) at /Users/sacha/pkg/julia/usr/lib/julia/sys.dylib:?
 in process_options(::Base.JLOptions) at ./client.jl:262
 in _start() at ./client.jl:326
 in _start() at /Users/sacha/pkg/julia/usr/lib/julia/sys.dylib:?
while loading /Users/sacha/pkg/julia/usr/share/julia/test/runtests.jl, in expression starting on line 26
ERROR: A test has failed. Please submit a bug report (https://github.com/JuliaLang/julia/issues)
including error messages above and the output of versioninfo():
Julia Version 0.6.0-dev.693
Commit 2193638* (2016-09-18 19:22 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin15.5.0)
  CPU: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, ivybridge)

 in runtests(::String, ::Int64) at ./interactiveutil.jl:652
 in runtests(::String) at ./interactiveutil.jl:641

cc @pabloferz. Best!

@yuyichao
Copy link
Contributor

broadcast_tup uses a closure in a generated function, which looks dangerous. (not necessarily related).

@vtjnash
Copy link
Member

vtjnash commented Sep 19, 2016

Fixing #265 caught a similar bug in the definition of unique: 7b0803c#diff-89e97f67f8058d32eac8d917db5bbdbfL1030

@pabloferz
Copy link
Contributor

The problem is that #18413 and #16986 have some conflict and #16986 wasn't rebased after #18413 merge, so each passed independently. Maybe we should consider rebasing commits more than a day old before merging.

@KristofferC
Copy link
Member

KristofferC commented Sep 19, 2016

Ideally, you call a bot that runs the tests on the topmost commit and only merges if the tests pass. The bot should also have some queue system so that every PR is applied to the very commit the tests run on. I think the Rust repo has something like that...

@tkelman
Copy link
Contributor

tkelman commented Sep 19, 2016

we'd need to implement barosl/homu#87 for them

@JeffBezanson
Copy link
Member

@vtjnash We will have to fix that somehow. Simply including a closure in a generated function can't be considered a bug at the user level.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants