Hello! Since we have merged https://issues.apache.org/jira/browse/IGNITE-6804 we have to face an embarrassing fact that BinaryObject is not Comparable, i.e., when you do cache.withKeepBinary().putAll(), there are no obvious ways to not get a deadlock (or at least warning) here.
One can use LinkedHashMap, but they will have to sort BinaryObject's on their side, which is not trivial. So my proposal is to make BinaryObjectImpl and KeyCacheObject (?) Comparable, by their binary representation. We can't add this constraint to BinaryObject since it is a public interface (can we), but we can do that for the implementation types. What do you think? Regards, -- Ilya Kasnacheev