-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Closed
Labels
bugIndicates an unexpected problem or unintended behaviorIndicates an unexpected problem or unintended behavior
Description
This is a concurrency violation on this condition
julia/stdlib/Distributed/src/remotecall.jl
Line 259 in 8812c5c
const any_gc_flag = Condition() |
Happens when running tests on krynju/Dagger.jl@a5b5267 (DTable groupby tests with Dagger on processes)
Windows, Julia master
Seems like the notify needs to be wrapped in a while->trylock loop (because it's running in finalizer context), since the lock on that condition doesn't seem to be obtained anywhere and the docs say that the Condition structure is not threadsafe
Will look more into that and open a PR sometime next week
From worker 2: error in running finalizer: ConcurrencyViolationError(msg="lock must be held")
From worker 2: concurrency_violation at .\condition.jl:8
From worker 2: assert_havelock at .\condition.jl:25 [inlined]
From worker 2: assert_havelock at .\condition.jl:48 [inlined]
From worker 2: assert_havelock at .\condition.jl:72 [inlined]
From worker 2: notify at .\condition.jl:132
From worker 2: #notify#564 at .\condition.jl:130 [inlined]
From worker 2: notify at .\condition.jl:130 [inlined]
From worker 2: notify at .\condition.jl:130 [inlined]
From worker 2: process_worker at C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.8\Distributed\src\remotecall.jl:288 [inlined]
From worker 2: send_del_client_no_lock at C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.8\Distributed\src\remotecall.jl:280
From worker 2: finalize_ref at C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.8\Distributed\src\remotecall.jl:94
From worker 2: jl_apply at /cygdrive/c/buildbot/worker/package_win64/build/src\julia.h:1771 [inlined]
From worker 2: run_finalizer at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:278
From worker 2: jl_gc_run_finalizers_in_list at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:365
From worker 2: run_finalizers at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:394 [inlined]
From worker 2: run_finalizers at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:372
From worker 2: jl_gc_run_pending_finalizers at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:405
From worker 2: jl_mutex_unlock at /cygdrive/c/buildbot/worker/package_win64/build/src\locks.h:133 [inlined]
From worker 2: jl_generate_fptr at /cygdrive/c/buildbot/worker/package_win64/build/src\jitlayers.cpp:357
From worker 2: jl_compile_method_internal at /cygdrive/c/buildbot/worker/package_win64/build/src\gf.c:1978
From worker 2: jl_compile_method_internal at /cygdrive/c/buildbot/worker/package_win64/build/src\gf.c:1932 [inlined]
From worker 2: _jl_invoke at /cygdrive/c/buildbot/worker/package_win64/build/src\gf.c:2237 [inlined]
From worker 2: jl_apply_generic at /cygdrive/c/buildbot/worker/package_win64/build/src\gf.c:2427
From worker 2: jl_apply at /cygdrive/c/buildbot/worker/package_win64/build/src\julia.h:1771 [inlined]
From worker 2: start_task at /cygdrive/c/buildbot/worker/package_win64/build/src\task.c:881
Metadata
Metadata
Assignees
Labels
bugIndicates an unexpected problem or unintended behaviorIndicates an unexpected problem or unintended behavior