[ https://issues.apache.org/jira/browse/CASSANDRA-11070?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
fujian updated CASSANDRA-11070: ------------------------------- Attachment: 0001-fix-CASSANDRA-11070.patch > Dispatcher.Flusher's control has duplicated/conflict control > ------------------------------------------------------------ > > Key: CASSANDRA-11070 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11070 > Project: Cassandra > Issue Type: Bug > Components: Streaming and Messaging > Reporter: fujian > Labels: performance > Attachments: 0001-fix-CASSANDRA-11070.patch > > > org.apache.cassandra.transport.Message.Dispatcher.Flusher > remove duplicated control for flush message control … > Motivation: > the !doneWork's control is duplicated and confused with runsSinceFlush > 2 > if on the first run:the queue size is 20 > donework will be set to true and not do flush due to the size<50 and > runsSinceFlush<2. > if on the second run. the queue size is 0, > donework will be reset to false and not set to true due to no new items in > queue, but the flush will be triggered due to: > if (!doneWork || runsSinceFlush > 2 || flushed.size() > 50) > now the runsSinceFlush is 2. so in actual, its function is similar with > runsSinceFlush>1. > so it is no need to keep it so that the code is confused and duplicated. > > Modifications: > remove it > Result: > after remove it, it will more clear and no confused. > check the link: > https://github.com/jiafu1115/cassandra/commit/5279884e6a392d36b4adc5e29f9ca5d0666cb275 -- This message was sent by Atlassian JIRA (v6.3.4#6332)