[jira] [Created] (IGNITE-11558) Developer warning when HashMap is passed to putAll()

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (IGNITE-11558) Developer warning when HashMap is passed to putAll()

Anton Vinogradov (Jira)
Ilya Kasnacheev created IGNITE-11558:
----------------------------------------

             Summary: Developer warning when HashMap is passed to putAll()
                 Key: IGNITE-11558
                 URL: https://issues.apache.org/jira/browse/IGNITE-11558
             Project: Ignite
          Issue Type: Improvement
          Components: cache
    Affects Versions: 2.7
            Reporter: Ilya Kasnacheev


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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)