# Signal (22): SIGABRT

**URL:** <https://discourse.julialang.org/t/signal-22-sigabrt/55524>\
**Category:** General Usage\
**Tags:** question\
**Created:** [February 18, 2021, 9:24am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524 "2021-02-18T09:24:52Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![ohmsweetohm1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ohmsweetohm1/32/49126_2.png) [@ohmsweetohm1](https://discourse.julialang.org/u/ohmsweetohm1)\
**Post date:** [February 18, 2021, 9:24am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/1 "2021-02-18T09:24:52Z")

</div>

If I add `Threads.@threads` to a `for` loop in my script I get this:

```julia
Assertion failed: new_time >= loop->time, file src/win/core.c, line 105

signal (22): SIGABRT
in expression starting at <the line of the function call>
crt_sig_handler at /cygdrive/d/buildbot/worker/package_win64/build/src\signals-win.c:92
raise at C:\WINDOWS\System32\msvcrt.dll (unknown line)
abort at C:\WINDOWS\System32\msvcrt.dll (unknown line)
assert at C:\WINDOWS\System32\msvcrt.dll (unknown line)
uv_update_time at /workspace/srcdir/libuv\src/win\core.c:105
uv_run at /workspace/srcdir/libuv\src/win\core.c:371
jl_process_events at /cygdrive/d/buildbot/worker/package_win64/build/src\jl_uv.c:214
jl_task_get_next at /cygdrive/d/buildbot/worker/package_win64/build/src\partr.c:520 
poptask at .\task.jl:704
wait at .\task.jl:712 [inlined]
task_done_hook at .\task.jl:442
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1690 [inlined]
jl_finish_task at /cygdrive/d/buildbot/worker/package_win64/build/src\task.c:198      
start_task at /cygdrive/d/buildbot/worker/package_win64/build/src\task.c:717
Allocations: 109330606 (Pool: 109300806; Big: 29800); GC: 83

```

Inside the loop i call functions that are not pure but should not modify overlapping data.  
How can I debug this?

---

<div class="post-metadata">

**Author:** ![carstenbauer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carstenbauer/32/4981_2.png) [@carstenbauer](https://discourse.julialang.org/u/carstenbauer)\
**Post date:** [February 18, 2021, 9:49am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/2 "2021-02-18T09:49:02Z")

</div>

Might be a bug. Do you have a MWE?

---

<div class="post-metadata">

**Author:** ![ohmsweetohm1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ohmsweetohm1/32/49126_2.png) [@ohmsweetohm1](https://discourse.julialang.org/u/ohmsweetohm1)\
**Post date:** [February 18, 2021, 9:58am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/3 "2021-02-18T09:58:44Z")

</div>

How would I obtain one?

---

<div class="post-metadata">

**Author:** ![carstenbauer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carstenbauer/32/4981_2.png) [@carstenbauer](https://discourse.julialang.org/u/carstenbauer)\
**Post date:** [February 18, 2021, 10:19am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/4 "2021-02-18T10:19:31Z")

</div>

You can try to simplify your script as much as possible such that it still shows the error.

---

<div class="post-metadata">

**Author:** ![ohmsweetohm1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ohmsweetohm1/32/49126_2.png) [@ohmsweetohm1](https://discourse.julialang.org/u/ohmsweetohm1)\
**Post date:** [February 18, 2021, 10:25am UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/5 "2021-02-18T10:25:09Z")

</div>

Ah, minimum working example. 😅  
I will try but I am calling a Module that I have written myself and can not share.

---

<div class="post-metadata">

**Author:** ![ohmsweetohm1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ohmsweetohm1/32/49126_2.png) [@ohmsweetohm1](https://discourse.julialang.org/u/ohmsweetohm1)\
**Post date:** [March 5, 2021, 6:57pm UTC](https://discourse.julialang.org/t/signal-22-sigabrt/55524/6 "2021-03-05T18:57:50Z")

</div>

I iterated over a Dict in the loop.  
The documentation states:

> Base collection types require manual locking if used simultaneously by multiple threads where at least one thread modifies the collection (common examples include `push!` on arrays, or inserting items into a `Dict` ).

I switched to a simple vector, which resolved the issue.
