Wilfred Hughes
Wilfred Hughes
This does risk re-visiting nodes however. We know the graph is directed acyclic, but without knowing visited nodes we could repeat ourselves.
When re-doing partial searches, we know the bound that we should search for, and can ignore nodes that exceed that distance.
Didn't work out: most of the time is node creation, not predecessor search.
Could you share a copy of the JSON file or the git repository? I can't reproduce the crash without it. (I agree that maybe difftastic should be consistent for git-lfs,...
Oh, I hadn't noticed you've set DFT_BYTE_LIMIT. I'd guess that the JSON parser is OOMing. If you haven't increased DFT_GRAPH_LIMIT then the diffing logic should limit its memory. Does it...
What processes are running? Is it waiting on a rustc process or a gcc process? It might be interesting to try the build with `--jobs 1` to help narrow it...
I'm not familiar with truss. That parking call does make me wonder if something has deadlocked though. Could you try changing build.rs: https://github.com/Wilfred/difftastic/blob/master/build.rs#L265 to run the C builds one-by-one? ```...
That was what I had in mind, thanks for trying. This looks like a rustc bug. Would you mind reporting it upstream?
Given this looks like an upstream bug, I'm closing it.
Tested with https://docs.rs/priority-queue/latest/priority_queue/priority_queue/struct.PriorityQueue.html but it was a net perf loss, even with FxHash.