Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
2.7
-
None
-
None
Description
Currently when HashMap is passed to putAll it's very easy to cause deadlock since the order of keys is not stable.
This is a pity because users will use HashMap by default and not expect any trouble.
We should issue a warning when user passes HashMap (but not LinkedHashMap) to putAll(). On .Net we should probably check for Dictionary. Warning similar to the one issues when index cannot be efficiently inlined.
Another approach is to turn keys into binary form and then sort them, if map is not a SortedMap.
Attachments
Issue Links
- duplicates
-
IGNITE-6804 Print a warning if HashMap is passed into bulk update operations
- Resolved
- is blocked by
-
IGNITE-12451 Introduce deadlock detection for cache entry reentrant locks
- Resolved