Skip to content

Commit

Permalink
refactoring and fixing bugs
Browse files Browse the repository at this point in the history
Signed-off-by: Bharathwaj G <[email protected]>
  • Loading branch information
bharath-techie committed Aug 24, 2024
1 parent d4ac7fc commit d339434
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
public class CompositeIndexSettings {
public static final Setting<Boolean> STAR_TREE_INDEX_ENABLED_SETTING = Setting.boolSetting(
"indices.composite_index.star_tree.enabled",
false,
true,
value -> {
if (FeatureFlags.isEnabled(FeatureFlags.STAR_TREE_INDEX_SETTING) == false && value == true) {
throw new IllegalArgumentException(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@ public void build(
List<SequentialDocValuesIterator> metricReaders = getMetricReaders(writeState, fieldProducerMap);
List<Dimension> dimensionsSplitOrder = starTreeField.getDimensionsOrder();
SequentialDocValuesIterator[] dimensionReaders = new SequentialDocValuesIterator[dimensionsSplitOrder.size()];
for (int i = 0; i < numDimensions; i++) {
for (int i = 0; i < dimensionReaders.length; i++) {
String dimension = dimensionsSplitOrder.get(i).getField();
FieldInfo dimensionFieldInfo = writeState.fieldInfos.fieldInfo(dimension);
if (dimensionFieldInfo == null) {
Expand Down Expand Up @@ -326,18 +326,20 @@ private void createSortedDocValuesIndices(DocValuesConsumer docValuesConsumer, A
throws IOException {
List<SortedNumericDocValuesWriterWrapper> dimensionWriters = new ArrayList<>();
List<SortedNumericDocValuesWriterWrapper> metricWriters = new ArrayList<>();
FieldInfo[] dimensionFieldInfoList = new FieldInfo[starTreeField.getDimensionsOrder().size()];
FieldInfo[] dimensionFieldInfoList = new FieldInfo[numDimensions];
FieldInfo[] metricFieldInfoList = new FieldInfo[metricAggregatorInfos.size()];
for (int i = 0; i < dimensionFieldInfoList.length; i++) {
final FieldInfo fi = StarTreeUtils.getFieldInfo(
fullyQualifiedFieldNameForStarTreeDimensionsDocValues(
starTreeField.getName(),
starTreeField.getDimensionsOrder().get(i).getField()
),
fieldNumberAcrossStarTrees.getAndIncrement()
);
dimensionFieldInfoList[i] = fi;
dimensionWriters.add(new SortedNumericDocValuesWriterWrapper(fi, Counter.newCounter()));
int dimIndex = 0;
for (int i = 0; i < dimensionsSplitOrder.size(); i++) {
for(String name : dimensionsSplitOrder.get(i).getDimensionFieldsNames()) {
final FieldInfo fi = StarTreeUtils.getFieldInfo(
fullyQualifiedFieldNameForStarTreeDimensionsDocValues(starTreeField.getName(),
name),
fieldNumberAcrossStarTrees.getAndIncrement());

dimensionFieldInfoList[dimIndex] = fi;
dimensionWriters.add(new SortedNumericDocValuesWriterWrapper(fi, Counter.newCounter()));
dimIndex++;
}
}
for (int i = 0; i < metricAggregatorInfos.size(); i++) {

Expand Down Expand Up @@ -386,7 +388,7 @@ private void createSortedDocValuesIndices(DocValuesConsumer docValuesConsumer, A
}
}

addStarTreeDocValueFields(docValuesConsumer, dimensionWriters, dimensionFieldInfoList, starTreeField.getDimensionsOrder().size());
addStarTreeDocValueFields(docValuesConsumer, dimensionWriters, dimensionFieldInfoList, numDimensions);
addStarTreeDocValueFields(docValuesConsumer, metricWriters, metricFieldInfoList, metricAggregatorInfos.size());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,18 @@ private static void writeMeta(
long dataFileLength
) throws IOException {

int numDims = 0;
for(Dimension dim : starTreeField.getDimensionsOrder()) {
numDims += dim.getNumSubDimensions();
}
// number of dimensions
metaOut.writeVInt(starTreeField.getDimensionsOrder().size());
metaOut.writeVInt(numDims);

// dimensions
for (Dimension dimension : starTreeField.getDimensionsOrder()) {
metaOut.writeString(dimension.getField());
for(String dim : dimension.getDimensionFieldsNames()) {
metaOut.writeString(dim);
}
}

// number of metrics
Expand Down

0 comments on commit d339434

Please sign in to comment.