Jacek Lewandowski created CASSANDRA-18013:
---------------------------------------------

             Summary: Splitter sometimes creates different number of splits 
than requested
                 Key: CASSANDRA-18013
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18013
             Project: Cassandra
          Issue Type: Bug
          Components: Local/Compaction
            Reporter: Jacek Lewandowski
            Assignee: Jacek Lewandowski


{{Splitter}} in some cases may produce one split more than requested. When it 
happens, it  fails with assertion error when assertions are enabled.

Test to reproduce the issue:

{code:java}
        Splitter splitter = getSplitter(Murmur3Partitioner.instance);
        long lt = 0;
        long rt = 31;
        Range<Token> range = new 
Range<>(getWrappedToken(Murmur3Partitioner.instance, BigInteger.valueOf(lt)),
                                         
getWrappedToken(Murmur3Partitioner.instance, BigInteger.valueOf(rt)));

        for (int i = 1; i <= (rt - lt); i++)
        {
            List<Token> splits = splitter.splitOwnedRanges(i, Arrays.asList(new 
Splitter.WeightedRange(1.0d, range)), false);
            logger.info("{} splits of {} are: {}", i, range, splits);
            Assertions.assertThat(splits).hasSize(i);
        }
{code}





--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to