You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On linux I get segmentation faults when --fixFEN finds missing keys in the metadata, say. In itself this is not a problem, as the code should exit anyway. But a more graceful way to stop would be nice. I think the segmentation faults comes from the parallel execution of many PGN analysises, and maybe the exit(1) leads to some unexpected states there. (Sadly, I do not know how to fix this.)
Sample output for me:
Missing "book_depth" key in metadata for .epd book for test pgns/23-09-23/650f26ffadc82c88993ddd80/650f26ffadc82c88993ddd80
pt pt 00
scoreWDLstat: external/chess.hpp:1872: virtual void chess::Board::placePiece(chess::Piece, chess::Square): Assertion `board_[sq] == Piece::NONE' failed.
file_from -1
Segmentation fault (core dumped)
The text was updated successfully, but these errors were encountered:
It might be because the std::exit() in Analysis::header() causes the destruction of objects with static storage duration, and pos_map gets destroyed before the other worker threads get cleaned up ? So you'd get invalid accesses to the global variable and thus segmentation faults when you have missing position keys.
Assuming this is what causes the crash, I'd see two solutions to this: either skip the offending game completely (while still emitting a warning because one of the FENs couldn't be found in the book), or signal the error to the main thread in some way, which then aborts all the workers and exits with an error.
On linux I get segmentation faults when
--fixFEN
finds missing keys in the metadata, say. In itself this is not a problem, as the code should exit anyway. But a more graceful way to stop would be nice. I think the segmentation faults comes from the parallel execution of many PGN analysises, and maybe theexit(1)
leads to some unexpected states there. (Sadly, I do not know how to fix this.)Sample output for me:
The text was updated successfully, but these errors were encountered: