[jira] [Commented] (CASSANDRA-5538) Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints
[ https://issues.apache.org/jira/browse/CASSANDRA-5538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13671004#comment-13671004 ] Dave Brosius commented on CASSANDRA-5538: - +1 lgtm Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints -- Key: CASSANDRA-5538 URL: https://issues.apache.org/jira/browse/CASSANDRA-5538 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 2.0 Reporter: Dave Brosius Assignee: Dave Brosius Priority: Trivial Fix For: 2.0 Attachments: 5538-2.txt, 5538.txt StorageProxy.sendToHintedEndpoints allocates HashMaps consistently that are very often not used. See output: http://pastebin.com/jEaBxz1h Format is Type Date SourceLine CollectionSize NumBuckets NumBucketsUsed The snapshot is taken after the size of the collection hasn't changed for 5 seconds. Postpone creation of hashmap until you need it. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-5538) Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints
[ https://issues.apache.org/jira/browse/CASSANDRA-5538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13668751#comment-13668751 ] Jonathan Ellis commented on CASSANDRA-5538: --- /me throws up the [~dbrosius] signal Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints -- Key: CASSANDRA-5538 URL: https://issues.apache.org/jira/browse/CASSANDRA-5538 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 2.0 Reporter: Dave Brosius Assignee: Dave Brosius Priority: Trivial Fix For: 2.0 Attachments: 5538-2.txt, 5538.txt StorageProxy.sendToHintedEndpoints allocates HashMaps consistently that are very often not used. See output: http://pastebin.com/jEaBxz1h Format is Type Date SourceLine CollectionSize NumBuckets NumBucketsUsed The snapshot is taken after the size of the collection hasn't changed for 5 seconds. Postpone creation of hashmap until you need it. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-5538) Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints
[ https://issues.apache.org/jira/browse/CASSANDRA-5538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13649701#comment-13649701 ] Jonathan Ellis commented on CASSANDRA-5538: --- nice work, +1. It looks like this basically optimizes local writes, right? ISTM that the next-most-common case will be single, local datacenter. Can we optimize for that with a SingletonMap instead of a full hashmap? Wrinkle is I'm not entirely sure the best way to ask, are multiple DCs involved. Brute force: add a Snitch.isMultiDC method (did you see multiple DCs when you initialized yourself); downside is I'm not sure how to do this for EC2Snitch; might just have to assume True. Less coupling: pre-iterate the targets and track last-seen datacenter and compare; downside is one, possibly two hash lookups per target, then a string compare, and in the case we're trying to optimize for we do the most comparisons. So maybe brute force is the way to go unless you have a better idea. Okay to break that out into a separate ticket if you'd rather. Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints -- Key: CASSANDRA-5538 URL: https://issues.apache.org/jira/browse/CASSANDRA-5538 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 2.0 Reporter: Dave Brosius Assignee: Dave Brosius Priority: Trivial Fix For: 2.0 Attachments: 5538.txt StorageProxy.sendToHintedEndpoints allocates HashMaps consistently that are very often not used. See output: http://pastebin.com/jEaBxz1h Format is Type Date SourceLine CollectionSize NumBuckets NumBucketsUsed The snapshot is taken after the size of the collection hasn't changed for 5 seconds. Postpone creation of hashmap until you need it. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-5538) Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints
[ https://issues.apache.org/jira/browse/CASSANDRA-5538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13649754#comment-13649754 ] Dave Brosius commented on CASSANDRA-5538: - Fixed the local writes case with commit 3c06ff0a8ee64742416c4b8a5ec083ea5a390e34 to trunk. Reduce Empty Map allocations in StorageProxy.sendToHintedEndpoints -- Key: CASSANDRA-5538 URL: https://issues.apache.org/jira/browse/CASSANDRA-5538 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 2.0 Reporter: Dave Brosius Assignee: Dave Brosius Priority: Trivial Fix For: 2.0 Attachments: 5538.txt StorageProxy.sendToHintedEndpoints allocates HashMaps consistently that are very often not used. See output: http://pastebin.com/jEaBxz1h Format is Type Date SourceLine CollectionSize NumBuckets NumBucketsUsed The snapshot is taken after the size of the collection hasn't changed for 5 seconds. Postpone creation of hashmap until you need it. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira