Possible race condition when removing a single value from bitvector domain
Closed this issue · 0 comments
bokner commented
In CPSolver.BitVectorDomain.remove/2:
{domain_change, domain}
|> tap(fn _ -> :bit_vector.clear(bit_vector, vector_value) end)
end
Think about the implications of running this by several propagators concurrently.
It could be that this value is the only one remaining in the domain (by the time it runs), and it would then be an undetected failure.