[jira] [Updated] (IGNITE-2577) Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add()
[ https://issues.apache.org/jira/browse/IGNITE-2577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-2577: Priority: Minor (was: Major) > Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add() > -- > > Key: IGNITE-2577 > URL: https://issues.apache.org/jira/browse/IGNITE-2577 > Project: Ignite > Issue Type: Task > Components: cache >Affects Versions: 1.5.0.final >Reporter: Vladimir Ozerov >Priority: Minor > Labels: performance > Fix For: 2.0 > > > *Problem* > GridDistributedTxMapping is initialized with empty HashSet() for TX entries > by default. > When the very first element is added, undelying HashMap expands causing > memory traffic. > *Proposed solutions* > 1) Use LinkedList instead. One can notice that when GridDistributedTxMapping > is deserialized using direct reader, "entries" are read as list. Furthermore, > both "reads" and "writes" projections are returned as wrapped views, so that > do not benefit form fast lookups. > If we neither perform lookups from entries, nor require "unique" Set > semantics, "entries" could be changed to LinkedList thus decresaing memory > traffic. > 2) Use special singleton collection. This way we will have to evaluate all > "entries" usages very carefully. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-2577) Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add()
[ https://issues.apache.org/jira/browse/IGNITE-2577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-2577: Fix Version/s: (was: 1.8) 2.0 > Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add() > -- > > Key: IGNITE-2577 > URL: https://issues.apache.org/jira/browse/IGNITE-2577 > Project: Ignite > Issue Type: Task > Components: cache >Affects Versions: 1.5.0.final >Reporter: Vladimir Ozerov > Labels: performance > Fix For: 2.0 > > > *Problem* > GridDistributedTxMapping is initialized with empty HashSet() for TX entries > by default. > When the very first element is added, undelying HashMap expands causing > memory traffic. > *Proposed solutions* > 1) Use LinkedList instead. One can notice that when GridDistributedTxMapping > is deserialized using direct reader, "entries" are read as list. Furthermore, > both "reads" and "writes" projections are returned as wrapped views, so that > do not benefit form fast lookups. > If we neither perform lookups from entries, nor require "unique" Set > semantics, "entries" could be changed to LinkedList thus decresaing memory > traffic. > 2) Use special singleton collection. This way we will have to evaluate all > "entries" usages very carefully. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-2577) Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add()
[ https://issues.apache.org/jira/browse/IGNITE-2577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-2577: Fix Version/s: (was: 1.6) 1.7 > Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add() > -- > > Key: IGNITE-2577 > URL: https://issues.apache.org/jira/browse/IGNITE-2577 > Project: Ignite > Issue Type: Task > Components: cache >Affects Versions: 1.5.0.final >Reporter: Vladimir Ozerov > Labels: performance > Fix For: 1.7 > > > *Problem* > GridDistributedTxMapping is initialized with empty HashSet() for TX entries > by default. > When the very first element is added, undelying HashMap expands causing > memory traffic. > *Proposed solutions* > 1) Use LinkedList instead. One can notice that when GridDistributedTxMapping > is deserialized using direct reader, "entries" are read as list. Furthermore, > both "reads" and "writes" projections are returned as wrapped views, so that > do not benefit form fast lookups. > If we neither perform lookups from entries, nor require "unique" Set > semantics, "entries" could be changed to LinkedList thus decresaing memory > traffic. > 2) Use special singleton collection. This way we will have to evaluate all > "entries" usages very carefully. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-2577) Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add()
[ https://issues.apache.org/jira/browse/IGNITE-2577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-2577: Issue Type: Task (was: Sub-task) Parent: (was: IGNITE-2232) > Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add() > -- > > Key: IGNITE-2577 > URL: https://issues.apache.org/jira/browse/IGNITE-2577 > Project: Ignite > Issue Type: Task > Components: cache >Affects Versions: 1.5.0.final >Reporter: Vladimir Ozerov > Labels: performance > Fix For: 1.6 > > > *Problem* > GridDistributedTxMapping is initialized with empty HashSet() for TX entries > by default. > When the very first element is added, undelying HashMap expands causing > memory traffic. > *Proposed solutions* > 1) Use LinkedList instead. One can notice that when GridDistributedTxMapping > is deserialized using direct reader, "entries" are read as list. Furthermore, > both "reads" and "writes" projections are returned as wrapped views, so that > do not benefit form fast lookups. > If we neither perform lookups from entries, nor require "unique" Set > semantics, "entries" could be changed to LinkedList thus decresaing memory > traffic. > 2) Use special singleton collection. This way we will have to evaluate all > "entries" usages very carefully. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-2577) Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add()
[ https://issues.apache.org/jira/browse/IGNITE-2577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-2577: Labels: performance (was: ) > Investigate HashMap.Node[] allocations from GridDistributedTxMapping.add() > -- > > Key: IGNITE-2577 > URL: https://issues.apache.org/jira/browse/IGNITE-2577 > Project: Ignite > Issue Type: Sub-task > Components: cache >Affects Versions: 1.5.0.final >Reporter: Vladimir Ozerov > Labels: performance > Fix For: 1.6 > > > *Problem* > GridDistributedTxMapping is initialized with empty HashSet() for TX entries > by default. > When the very first element is added, undelying HashMap expands causing > memory traffic. > *Proposed solutions* > 1) Use LinkedList instead. One can notice that when GridDistributedTxMapping > is deserialized using direct reader, "entries" are read as list. Furthermore, > both "reads" and "writes" projections are returned as wrapped views, so that > do not benefit form fast lookups. > If we neither perform lookups from entries, nor require "unique" Set > semantics, "entries" could be changed to LinkedList thus decresaing memory > traffic. > 2) Use special singleton collection. This way we will have to evaluate all > "entries" usages very carefully. -- This message was sent by Atlassian JIRA (v6.3.4#6332)