Skip to content

Commit 8ac65ac

Browse files
rename count to value_count
Signed-off-by: Bharathwaj G <[email protected]>
1 parent a918530 commit 8ac65ac

File tree

11 files changed

+83
-27
lines changed

11 files changed

+83
-27
lines changed

server/src/internalClusterTest/java/org/opensearch/index/mapper/StarTreeMapperIT.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ public void testValidCompositeIndex() {
267267
assertEquals("numeric_dv", starTreeFieldType.getMetrics().get(0).getField());
268268
List<MetricStat> expectedMetrics = Arrays.asList(
269269
MetricStat.AVG,
270-
MetricStat.COUNT,
270+
MetricStat.VALUE_COUNT,
271271
MetricStat.SUM,
272272
MetricStat.MAX,
273273
MetricStat.MIN
@@ -351,7 +351,7 @@ public void testUpdateIndexWhenMappingIsSame() {
351351
assertEquals("numeric_dv", starTreeFieldType.getMetrics().get(0).getField());
352352
List<MetricStat> expectedMetrics = Arrays.asList(
353353
MetricStat.AVG,
354-
MetricStat.COUNT,
354+
MetricStat.VALUE_COUNT,
355355
MetricStat.SUM,
356356
MetricStat.MAX,
357357
MetricStat.MIN

server/src/main/java/org/opensearch/index/compositeindex/datacube/MetricStat.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
*/
1818
@ExperimentalApi
1919
public enum MetricStat {
20-
COUNT("count"),
20+
VALUE_COUNT("value_count"),
2121
AVG("avg"),
2222
SUM("sum"),
2323
MIN("min"),

server/src/main/java/org/opensearch/index/compositeindex/datacube/startree/StarTreeIndexSettings.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ public class StarTreeIndexSettings {
9797
"index.composite_index.star_tree.field.default.metrics",
9898
Arrays.asList(
9999
MetricStat.AVG.toString(),
100-
MetricStat.COUNT.toString(),
100+
MetricStat.VALUE_COUNT.toString(),
101101
MetricStat.SUM.toString(),
102102
MetricStat.MAX.toString(),
103103
MetricStat.MIN.toString()

server/src/main/java/org/opensearch/index/compositeindex/datacube/startree/aggregators/CountValueAggregator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public CountValueAggregator(StarTreeNumericType starTreeNumericType) {
2626

2727
@Override
2828
public MetricStat getAggregationType() {
29-
return MetricStat.COUNT;
29+
return MetricStat.VALUE_COUNT;
3030
}
3131

3232
@Override

server/src/main/java/org/opensearch/index/compositeindex/datacube/startree/aggregators/ValueAggregatorFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public static ValueAggregator getValueAggregator(MetricStat aggregationType, Sta
3030
// other metric types (count, min, max, avg) will be supported in the future
3131
case SUM:
3232
return new SumValueAggregator(starTreeNumericType);
33-
case COUNT:
33+
case VALUE_COUNT:
3434
return new CountValueAggregator(starTreeNumericType);
3535
default:
3636
throw new IllegalStateException("Unsupported aggregation type: " + aggregationType);
@@ -48,7 +48,7 @@ public static StarTreeNumericType getAggregatedValueType(MetricStat aggregationT
4848
// other metric types (count, min, max, avg) will be supported in the future
4949
case SUM:
5050
return SumValueAggregator.VALUE_AGGREGATOR_TYPE;
51-
case COUNT:
51+
case VALUE_COUNT:
5252
return CountValueAggregator.VALUE_AGGREGATOR_TYPE;
5353
default:
5454
throw new IllegalStateException("Unsupported aggregation type: " + aggregationType);
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/*
2+
* SPDX-License-Identifier: Apache-2.0
3+
*
4+
* The OpenSearch Contributors require contributions made to
5+
* this file be licensed under the Apache-2.0 license or a
6+
* compatible open source license.
7+
*/
8+
9+
package org.opensearch.common.util;
10+
11+
import org.apache.lucene.store.FSDirectory;
12+
import org.apache.lucene.store.IOContext;
13+
import org.apache.lucene.store.IndexInput;
14+
import org.apache.lucene.store.IndexOutput;
15+
import org.apache.lucene.store.RandomAccessInput;
16+
import org.opensearch.test.OpenSearchTestCase;
17+
18+
import java.io.IOException;
19+
import java.nio.file.Path;
20+
21+
/**
22+
* Tests for {@link ByteArrayBackedBitset}
23+
*/
24+
public class ByteArrayBackedBitsetTests extends OpenSearchTestCase {
25+
public void testWriteAndReadNullBitSets() throws IOException {
26+
for (int k = 0; k < 10; k++) {
27+
int randomArraySize = randomIntBetween(2, 300);
28+
int randomIndex1 = randomIntBetween(0, (randomArraySize - 1) * 8);
29+
int randomIndex2 = randomIntBetween(0, (randomArraySize - 1) * 8);
30+
testWriteAndReadBitset(randomArraySize, randomIndex1, randomIndex2);
31+
}
32+
}
33+
34+
private static void testWriteAndReadBitset(int randomArraySize, int randomIndex1, int randomIndex2) throws IOException {
35+
ByteArrayBackedBitset bitset = new ByteArrayBackedBitset(randomArraySize);
36+
Path basePath = createTempDir("OffHeapTests");
37+
FSDirectory fsDirectory = FSDirectory.open(basePath);
38+
String TEST_FILE = "test_file";
39+
IndexOutput indexOutput = fsDirectory.createOutput(TEST_FILE, IOContext.DEFAULT);
40+
bitset.set(randomIndex1);
41+
bitset.set(randomIndex2);
42+
bitset.write(indexOutput);
43+
indexOutput.close();
44+
45+
IndexInput in = fsDirectory.openInput(TEST_FILE, IOContext.DEFAULT);
46+
RandomAccessInput randomAccessInput = in.randomAccessSlice(0, in.length());
47+
ByteArrayBackedBitset bitset1 = new ByteArrayBackedBitset(randomAccessInput, 0, randomArraySize);
48+
for (int i = 0; i < (randomArraySize * 8); i++) {
49+
if (randomIndex1 == i || randomIndex2 == i) {
50+
assertTrue(bitset1.get(i));
51+
} else {
52+
assertFalse(bitset1.get(i));
53+
}
54+
}
55+
}
56+
}

server/src/test/java/org/opensearch/index/codec/composite/datacube/startree/StarTreeDocValuesFormatTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ private XContentBuilder getExpandedMapping(String dim, String metric) throws IOE
126126
b.field("name", "field");
127127
b.startArray("stats");
128128
b.value("sum");
129-
b.value("count"); // TODO : THIS TEST FAILS.
129+
b.value("value_count");
130130
b.endArray();
131131
b.endObject();
132132
b.endArray();

server/src/test/java/org/opensearch/index/compositeindex/datacube/startree/aggregators/CountValueAggregatorTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class CountValueAggregatorTests extends OpenSearchTestCase {
1616
private final CountValueAggregator aggregator = new CountValueAggregator(StarTreeNumericType.LONG);
1717

1818
public void testGetAggregationType() {
19-
assertEquals(MetricStat.COUNT.getTypeName(), aggregator.getAggregationType().getTypeName());
19+
assertEquals(MetricStat.VALUE_COUNT.getTypeName(), aggregator.getAggregationType().getTypeName());
2020
}
2121

2222
public void testGetAggregatedValueType() {

server/src/test/java/org/opensearch/index/compositeindex/datacube/startree/aggregators/MetricAggregatorInfoTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ public void testConstructor() {
2727

2828
public void testCountStarConstructor() {
2929
MetricAggregatorInfo pair = new MetricAggregatorInfo(
30-
MetricStat.COUNT,
30+
MetricStat.VALUE_COUNT,
3131
"anything",
3232
"star_tree_field",
3333
IndexNumericFieldData.NumericType.DOUBLE
3434
);
35-
assertEquals(MetricStat.COUNT, pair.getMetricStat());
35+
assertEquals(MetricStat.VALUE_COUNT, pair.getMetricStat());
3636
assertEquals("anything", pair.getField());
3737
}
3838

@@ -62,7 +62,7 @@ public void testEquals() {
6262
assertEquals(pair1, pair2);
6363
assertNotEquals(
6464
pair1,
65-
new MetricAggregatorInfo(MetricStat.COUNT, "column1", "star_tree_field", IndexNumericFieldData.NumericType.DOUBLE)
65+
new MetricAggregatorInfo(MetricStat.VALUE_COUNT, "column1", "star_tree_field", IndexNumericFieldData.NumericType.DOUBLE)
6666
);
6767
assertNotEquals(
6868
pair1,
@@ -100,7 +100,7 @@ public void testCompareTo() {
100100
IndexNumericFieldData.NumericType.DOUBLE
101101
);
102102
MetricAggregatorInfo pair3 = new MetricAggregatorInfo(
103-
MetricStat.COUNT,
103+
MetricStat.VALUE_COUNT,
104104
"column1",
105105
"star_tree_field",
106106
IndexNumericFieldData.NumericType.DOUBLE

server/src/test/java/org/opensearch/index/compositeindex/datacube/startree/builder/AbstractStarTreeBuilderTests.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ public void setup() throws IOException {
9292
metrics = List.of(
9393
new Metric("field2", List.of(MetricStat.SUM)),
9494
new Metric("field4", List.of(MetricStat.SUM)),
95-
new Metric("field6", List.of(MetricStat.COUNT))
95+
new Metric("field6", List.of(MetricStat.VALUE_COUNT))
9696
);
9797

9898
DocValuesProducer docValuesProducer = mock(DocValuesProducer.class);
@@ -1231,7 +1231,7 @@ private static StarTreeField getStarTreeFieldWithMultipleMetrics() {
12311231
Dimension d1 = new NumericDimension("field1");
12321232
Dimension d2 = new NumericDimension("field3");
12331233
Metric m1 = new Metric("field2", List.of(MetricStat.SUM));
1234-
Metric m2 = new Metric("field2", List.of(MetricStat.COUNT));
1234+
Metric m2 = new Metric("field2", List.of(MetricStat.VALUE_COUNT));
12351235
List<Dimension> dims = List.of(d1, d2);
12361236
List<Metric> metrics = List.of(m1, m2);
12371237
StarTreeFieldConfiguration c = new StarTreeFieldConfiguration(
@@ -1313,7 +1313,7 @@ public void testMergeFlowWithCount() throws IOException {
13131313
List<Long> metricsList = List.of(0L, 1L, 2L, 3L, 4L, 5L, 6L);
13141314
List<Integer> metricsWithField = List.of(0, 1, 2, 3, 4, 5, 6);
13151315

1316-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1316+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
13171317
StarTreeValues starTreeValues = getStarTreeValues(
13181318
getSortedNumericMock(dimList, docsWithField),
13191319
getSortedNumericMock(dimList2, docsWithField2),
@@ -1393,7 +1393,7 @@ public void testMergeFlowWithDifferentDocsFromSegments() throws IOException {
13931393
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
13941394
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
13951395

1396-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1396+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
13971397
StarTreeValues starTreeValues = getStarTreeValues(
13981398
getSortedNumericMock(dimList, docsWithField),
13991399
getSortedNumericMock(dimList2, docsWithField2),
@@ -1455,7 +1455,7 @@ public void testMergeFlowNumSegmentsDocs() throws IOException {
14551455
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
14561456
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
14571457

1458-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1458+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
14591459
StarTreeValues starTreeValues = getStarTreeValues(
14601460
getSortedNumericMock(dimList, docsWithField),
14611461
getSortedNumericMock(dimList2, docsWithField2),
@@ -1515,7 +1515,7 @@ public void testMergeFlowWithMissingDocs() throws IOException {
15151515
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
15161516
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
15171517

1518-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1518+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
15191519
StarTreeValues starTreeValues = getStarTreeValues(
15201520
getSortedNumericMock(dimList, docsWithField),
15211521
getSortedNumericMock(dimList2, docsWithField2),
@@ -1577,7 +1577,7 @@ public void testMergeFlowWithMissingDocsWithZero() throws IOException {
15771577
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
15781578
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
15791579

1580-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1580+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
15811581
StarTreeValues starTreeValues = getStarTreeValues(
15821582
getSortedNumericMock(dimList, docsWithField),
15831583
getSortedNumericMock(dimList2, docsWithField2),
@@ -1640,7 +1640,7 @@ public void testMergeFlowWithMissingDocsWithZeroComplexCase() throws IOException
16401640
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
16411641
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
16421642

1643-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1643+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
16441644
StarTreeValues starTreeValues = getStarTreeValues(
16451645
getSortedNumericMock(dimList, docsWithField),
16461646
getSortedNumericMock(dimList2, docsWithField2),
@@ -1707,7 +1707,7 @@ public void testMergeFlowWithMissingDocsInSecondDim() throws IOException {
17071707
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
17081708
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
17091709

1710-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1710+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
17111711
StarTreeValues starTreeValues = getStarTreeValues(
17121712
getSortedNumericMock(dimList, docsWithField),
17131713
getSortedNumericMock(dimList2, docsWithField2),
@@ -1770,7 +1770,7 @@ public void testMergeFlowWithDocsMissingAtTheEnd() throws IOException {
17701770
List<Long> metricsList2 = List.of(5L, 6L, 7L, 8L, 9L);
17711771
List<Integer> metricsWithField2 = List.of(0, 1, 2, 3, 4);
17721772

1773-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1773+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
17741774
StarTreeValues starTreeValues = getStarTreeValues(
17751775
getSortedNumericMock(dimList, docsWithField),
17761776
getSortedNumericMock(dimList2, docsWithField2),
@@ -1824,7 +1824,7 @@ public void testMergeFlowWithEmptyFieldsInOneSegment() throws IOException {
18241824
List<Long> metricsList = List.of(0L, 1L, 2L, 3L, 4L, 5L, 6L);
18251825
List<Integer> metricsWithField = List.of(0, 1, 2, 3, 4, 5, 6);
18261826

1827-
StarTreeField sf = getStarTreeField(MetricStat.COUNT);
1827+
StarTreeField sf = getStarTreeField(MetricStat.VALUE_COUNT);
18281828
StarTreeValues starTreeValues = getStarTreeValues(
18291829
getSortedNumericMock(dimList, docsWithField),
18301830
getSortedNumericMock(dimList2, docsWithField2),

server/src/test/java/org/opensearch/index/mapper/StarTreeMapperTests.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public void testValidStarTreeDefaults() throws IOException {
9494
assertEquals("status", starTreeFieldType.getMetrics().get(0).getField());
9595
List<MetricStat> expectedMetrics = Arrays.asList(
9696
MetricStat.AVG,
97-
MetricStat.COUNT,
97+
MetricStat.VALUE_COUNT,
9898
MetricStat.SUM,
9999
MetricStat.MAX,
100100
MetricStat.MIN
@@ -223,11 +223,11 @@ public void testMetric() {
223223
assertEquals(metric1, metric2);
224224
List<MetricStat> m2 = new ArrayList<>();
225225
m2.add(MetricStat.MAX);
226-
m2.add(MetricStat.COUNT);
226+
m2.add(MetricStat.VALUE_COUNT);
227227
metric2 = new Metric("name", m2);
228228
assertNotEquals(metric1, metric2);
229229

230-
assertEquals(MetricStat.COUNT, MetricStat.fromTypeName("count"));
230+
assertEquals(MetricStat.VALUE_COUNT, MetricStat.fromTypeName("value_count"));
231231
assertEquals(MetricStat.MAX, MetricStat.fromTypeName("max"));
232232
assertEquals(MetricStat.MIN, MetricStat.fromTypeName("min"));
233233
assertEquals(MetricStat.SUM, MetricStat.fromTypeName("sum"));

0 commit comments

Comments
 (0)