tadeja commented on PR #49961: URL: https://github.com/apache/arrow/pull/49961#issuecomment-4432426971
Diagnosed further - this isn't a `dataset_writer` bug. It looks like lower-level memory corruption, likely a gcc-16/MinGW regression. Keeping workaround of #49931's MSYS2 pin for now, #49945 stays waiting, tracked under #49948. - The bad_weak_ptr isn't an Arrow lifetime bug: in `BatchWriteConcurrent` the queue's only `shared_ptr` is not reset until `Finish()`, so `weak_from_this().expired()` there means a corrupted control block. `reset` -> `make_shared` did not fix this. - adding `fprintf` to the constructor/destructor of `DatasetWriterFileQueue` made it a Heisenbug - failed once, retry passed OK: https://github.com/apache/arrow/actions/runs/25737251706/job/75577465287?pr=49961#step:12:604 ```bash Test #62: arrow-dataset-dataset-writer-test ............Exit code 0xc0000374***Exception: 0.30 sec ... Test #62: arrow-dataset-dataset-writer-test ............ Passed 4.85 sec ... The following tests FAILED: 41 - arrow-async-utility-test (Exit code 0xc0000374) arrow-tests unittest 44 - arrow-threading-utility-test (Timeout) arrow-tests unittest 65 - arrow-dataset-file-test (Failed) arrow_dataset unittest 78 - arrow-flight-test (Failed) arrow_flight unittest Error: Process completed with exit code 8. ``` - Independent reproducers without `dataset_writer` are: `arrow-async-utility-test` always dies at `PushGenerator.Stress` and `arrow-threading-utility-test` always times out. Both fine on CLANG64/libc++ and on gcc‑15.2. Only gcc 15.2->gcc 16.1 is affected. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
