Is there a way to get a stack dump from DBT-DuckDB when a segmentation fault occurs #552
Replies: 1 comment 6 replies
-
|
Ooh, interesting one-- okay. So some chatting with Claude and o3 leads me to suggest enabling the python The rub is that's not going to catch anything inside of DuckDB, and I don't know if doing e.g. a debug DuckDB build is worth it in order to track this down (last time I checked, you have to do them yourself and they are pretty slow, but there may be new info here.) I'm also curious if you can share some more about the environment/setup-- the LLMs feel that the most likely culprit given your description is different threads trying to re-use the same underlying I'm going to have Claude cook up an extra safe |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Is there a way to force DBT-DUCKDB (or DBT itself) to generate a detailed stack dump when a segmentation fault occurs? We are seeing occasional segmentation faults occur when running large projects in DBT through DuckDB that are repeatable with our customer's confidential data, but I can't figure out a way to build a test harness to reproduce it without spending the next month build a project full of fake data to try to replication what is happening. We do know that it seems to happen more frequently with threads > 1 (we were running 4) and it is exacerbated when using something like
nice -n10 ionice -c2 -n4 dbt build....When the issue occurs, we either see a hard segmentation fault, or we see the MD5 function start returning back the same results for different input values (which happened a while ago which caused us to write a test that catches it after the model is built).
We do our builds in Linux Ubuntu 24.04 with Python 3.12.x - all the DBT and DuckDB libraries are latest.
And this is the last part of the dbt.log:
Beta Was this translation helpful? Give feedback.
All reactions