-
Notifications
You must be signed in to change notification settings - Fork 103
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
heap corruption (windows) at check(db.Ping()) #24
Comments
Meanwhile a lot has changed under the hood. Could you please check with the latest master and DuckDB 0.4.0 if you can reproduce this? Thanks! |
Thanks for the response. Still having similar issue. I get more information if I write to disk using Here is what I see:
Running in-memory just:
|
Thanks! I was able to reproduce this via GitHub actions (https://github.com/marcboeker/go-duckdb/runs/7548645334?check_suite_focus=true). Now I need a way to get access to a Windows Vm where I can debug this in detail. |
I tried again with the most up-to-date tech stack: Win11, Go 1.19.1, TDM-GCC, DuckDB 0.5.0 libraries and confirm the bug 😔 These kind of bugs remember me to the early times of the https://github.com/mattn/go-sqlite3 bindings, at the beginning they happened only on windows. |
There will be a release shortly with the ability to compile DuckDB from source and link it directly into the executable. If you want to test drive it, please see this PR. |
Excited about this release. Still having trouble on windows 10 though. Using the code from below:
In WSL (ubuntu) it builds: I see the following error (which I just checked happens at the ping): 2022/10/02 19:55:41 0x8141e0 Trying to build in windows: cc1plus.exe out of memory allocating 65536 bytes. I found this. Maybe I'm paranoid, but is it weird I would need to mess with the boot config? https://www.intel.com/content/www/us/en/support/programmable/articles/000086946.html |
After spending several hours to debug this, I have found some reasons but no solution. I can reproduce the problem with the exit status on Windows outside WSL bit in MSYS2 when using static linking using the duckdb.lib from their releases page. The file size is also extremely small compared to their dll. 1 mb vs 32 mb for the dll. The out of memory is based on a 32 bit compile chain. Switching to 64 bits solves the OOM problem for me, but compilation does not finish. That is weird. I'm tracking my progress in #51 |
I've encountered the same problem cross-compiling for Windows. Suspecting an incompatibility with the Visual C++ based build of the official duckdb Windows libs, I've rebuild the duckdb dll using TDM-GCC 10.3.0 (using the the mingw-w64 based compiler) and then cross-compiled with |
How to solve this problem? |
I have too little experience with compiler chains on Windows and not even access to a native Windows machine. So any additional help is welcomed. |
In regular Windows 10, I get
exit status 0xc0000374
(heap corruption) at the linecheck(db.Ping())
when it panics. Running the example program.Go 1.18.2, duckdb 0.3.4
Running with:
The text was updated successfully, but these errors were encountered: