private void testMultiRangeSlicesBehavior(ColumnFamilyStore cfs)
{
// in order not to change thrift interfaces at this stage we build SliceQueryFilter
// directly instead of using QueryFilter to build it for us
ColumnSlice[] startMiddleAndEndRanges = new ColumnSlice[] {
new ColumnSlice(Composites.EMPTY, cellname("colc")),
new ColumnSlice(cellname("colf"), cellname("colg")),
new ColumnSlice(cellname("colj"), Composites.EMPTY) };
ColumnSlice[] startMiddleAndEndRangesReversed = new ColumnSlice[] {
new ColumnSlice(Composites.EMPTY, cellname("colj")),
new ColumnSlice(cellname("colg"), cellname("colf")),
new ColumnSlice(cellname("colc"), Composites.EMPTY) };
ColumnSlice[] startOnlyRange =
new ColumnSlice[] { new ColumnSlice(Composites.EMPTY, cellname("colc")) };
ColumnSlice[] startOnlyRangeReversed =
new ColumnSlice[] { new ColumnSlice(cellname("colc"), Composites.EMPTY) };
ColumnSlice[] middleOnlyRanges =
new ColumnSlice[] { new ColumnSlice(cellname("colf"), cellname("colg")) };
ColumnSlice[] middleOnlyRangesReversed =
new ColumnSlice[] { new ColumnSlice(cellname("colg"), cellname("colf")) };
ColumnSlice[] endOnlyRanges =
new ColumnSlice[] { new ColumnSlice(cellname("colj"), Composites.EMPTY) };
ColumnSlice[] endOnlyRangesReversed =
new ColumnSlice[] { new ColumnSlice(Composites.EMPTY, cellname("colj")) };
SliceQueryFilter startOnlyFilter = new SliceQueryFilter(startOnlyRange, false,
Integer.MAX_VALUE);
SliceQueryFilter startOnlyFilterReversed = new SliceQueryFilter(startOnlyRangeReversed, true,
Integer.MAX_VALUE);