-
Notifications
You must be signed in to change notification settings - Fork 62
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
Julia crash (win 10 - MS ODBC 17 - ODBC v1.0.0) #292
Comments
Btw, same error with "ODBC Driver 13 for SQL Server". Possible related issues are: |
Not sure if it will help, but can you try #295 to see if it makes a difference? The ODBC docs mention needing to disconnect before freeing, but it seems like it'd be silly if that led to a segfault. I'll try to dust off a windows machine to test this some more later. |
Fixes #292. This was a bit of a bear to track down, mainly because the docs for SQLDisconnect state explicitly that all statements on the connection will be closed/freed when disconnecting. For whatever reason, that doesn't seem to be the case on windows, because when we keep a `WeakKeyDict` of statement handles and finalize them all before closing the connection, we no longer have issues. ¯\_(ツ)_/¯
Ok, I think I tracked down the issue here, PR with a fix is up: #296 |
An odd bug appeared after collecting all data and combining them into a data frame. Unfortunately it made whole of Julia crash so it might be some GC problem.
Last printout:
after last disconnect
after function where db data is collected ..
after slicing dataframe ..
...after market data
Please submit a bug report with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x7ffda4d0983b -- SQLAllocHandle at C:\WINDOWS\SYSTEM32\odbc32.DLL (unknown line)
in expression starting at C:\Users\hvarnhav\OneDrive - Fortum\Documents\DevRoot\jl\Heat\heatoslosim.jl:76
SQLAllocHandle at C:\WINDOWS\SYSTEM32\odbc32.DLL (unknown line)
SQLSetCursorName at C:\WINDOWS\SYSTEM32\odbc32.DLL (unknown line)
SQLDisconnect at C:\WINDOWS\SYSTEM32\odbc32.DLL (unknown line)
SQLFreeHandle at C:\Users\hvarnhav.julia\packages\ODBC\uLgtd\src\API.jl:87
#4 at C:\Users\hvarnhav.julia\packages\ODBC\uLgtd\src\API.jl:161
unknown function (ip: 0000000061D24B69)
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1692 [inlined]
run_finalizer at /cygdrive/d/buildbot/worker/package_win64/build/src\gc.c:277
jl_gc_run_finalizers_in_list at /cygdrive/d/buildbot/worker/package_win64/build/src\gc.c:363
run_finalizers at /cygdrive/d/buildbot/worker/package_win64/build/src\gc.c:391 [inlined]
run_finalizers at /cygdrive/d/buildbot/worker/package_win64/build/src\gc.c:370
jl_gc_enable_finalizers at /cygdrive/d/buildbot/worker/package_win64/build/src\gc.c:402
jl_mutex_unlock at /cygdrive/d/buildbot/worker/package_win64/build/src\locks.h:141 [inlined]
jl_compile_method_internal at /cygdrive/d/buildbot/worker/package_win64/build/src\gf.c:1911
jl_invoke at /cygdrive/d/buildbot/worker/package_win64/build/src\gf.c:2153 [inlined]
jl_apply_generic at /cygdrive/d/buildbot/worker/package_win64/build/src\gf.c:2322
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1692 [inlined]
do_call at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:369
eval_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:458
eval_stmt_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:409 [inlined]
eval_body at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:799
jl_interpret_toplevel_thunk at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:911
jl_toplevel_eval_flex at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:814
jl_parse_eval_all at /cygdrive/d/buildbot/worker/package_win64/build/src\ast.c:872
jl_load at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:872 [inlined]
jl_load at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:879
include at .\client.jl:439
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1692 [inlined]
do_call at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:369
eval_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:458
eval_stmt_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:409 [inlined]
eval_body at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:799
jl_interpret_toplevel_thunk at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:911
jl_toplevel_eval_flex at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:814
jl_toplevel_eval at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:823 [inlined]
jl_toplevel_eval_in at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:843
eval at .\boot.jl:331 [inlined]
repleval at C:\Users\hvarnhav.julia\packages\Atom\LBufP\src\repl.jl:196
#246 at C:\Users\hvarnhav.julia\packages\Atom\LBufP\src\repl.jl:223
with_logstate at .\logging.jl:398
with_logger at .\logging.jl:505 [inlined]
evalrepl at C:\Users\hvarnhav.julia\packages\Atom\LBufP\src\repl.jl:214
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1692 [inlined]
do_call at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:369
eval_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:458
eval_stmt_value at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:409 [inlined]
eval_body at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:799
jl_interpret_toplevel_thunk at /cygdrive/d/buildbot/worker/package_win64/build/src\interpreter.c:911
jl_toplevel_eval_flex at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:814
jl_toplevel_eval at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:823 [inlined]
jl_toplevel_eval_in at /cygdrive/d/buildbot/worker/package_win64/build/src\toplevel.c:843
eval at .\boot.jl:331
eval_user_input at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.4\REPL\src\REPL.jl:86
macro expansion at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.4\REPL\src\REPL.jl:118 [inlined]
#26 at .\task.jl:358
jl_apply at /cygdrive/d/buildbot/worker/package_win64/build/src\julia.h:1692 [inlined]
start_task at /cygdrive/d/buildbot/worker/package_win64/build/src\task.c:687
Allocations: 194939760 (Pool: 194901748; Big: 38012); GC: 138
Julia has exited.
Press Enter to start a new session.
The text was updated successfully, but these errors were encountered: