I noticed further problems with this patch, and it turned out to have other bugs that would manifest under very high concurrency of detach and attach (I think the problem was a detach followed by an immediate attach of the same partition, or perhaps it was an attach of a neighboring partition), so I spent more time ironing those out and ended up with the following, which I'm rather embarrased not to have had as the previous version because it looks simpler and more obvious.
Unless further surprises arise soon, I'll push this soonish.
If we abstract the problem that this patch attempts to solve,it would try to find same elements on two arrays.
The lengths of these two arrays are not guaranteed to be equal. In this issue, even though the lengths of two arrays
is same, we can't assume the each element on two arrays is same.
The algorithm used in patch is correct if I understand correctly.