Skip to content

Commit 6e07d8c

Browse files
committed
adjust for notion of offset after rebasing
1 parent c599b15 commit 6e07d8c

File tree

4 files changed

+94
-65
lines changed

4 files changed

+94
-65
lines changed

server/src/main/java/org/elasticsearch/index/codec/tsdb/es819/BlockAwareNumericDocValues.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,20 @@
1717

1818
public abstract class BlockAwareNumericDocValues extends NumericDocValues {
1919

20-
public abstract void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException;
20+
public abstract void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException;
2121

2222
public abstract void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOException;
2323

24-
public abstract void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException;
24+
public abstract void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException;
2525

2626
public abstract void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOException;
2727

28-
public abstract void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
29-
throws IOException;
28+
public abstract void loadBlock(
29+
BlockLoader.DoubleBuilder builder,
30+
BlockLoader.Docs docs,
31+
int offset,
32+
BlockDocValuesReader.ToDouble toDouble
33+
) throws IOException;
3034

3135
public abstract void loadDoc(BlockLoader.DoubleBuilder builder, int docId, BlockDocValuesReader.ToDouble toDouble) throws IOException;
3236
}

server/src/main/java/org/elasticsearch/index/codec/tsdb/es819/BlockAwareSortedNumericDocValues.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,16 @@
1717

1818
public abstract class BlockAwareSortedNumericDocValues extends SortedNumericDocValues {
1919

20-
public abstract void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException;
20+
public abstract void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException;
2121

2222
public abstract void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOException;
2323

24-
public abstract void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException;
24+
public abstract void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException;
2525

2626
public abstract void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOException;
2727

28-
public abstract void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, ToDouble toDouble) throws IOException;
28+
public abstract void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, int offset, ToDouble toDouble)
29+
throws IOException;
2930

3031
public abstract void loadDoc(BlockLoader.DoubleBuilder builder, int docId, ToDouble toDouble) throws IOException;
3132

server/src/main/java/org/elasticsearch/index/codec/tsdb/es819/ES819TSDBDocValuesProducer.java

Lines changed: 64 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1060,7 +1060,7 @@ public long longValue() {
10601060
}
10611061

10621062
@Override
1063-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1063+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
10641064
for (int i = 0; i < docs.count(); i++) {
10651065
builder.appendLong(0L);
10661066
}
@@ -1072,7 +1072,7 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) {
10721072
}
10731073

10741074
@Override
1075-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1075+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
10761076
for (int i = 0; i < docs.count(); i++) {
10771077
builder.appendInt(0);
10781078
}
@@ -1084,10 +1084,14 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
10841084
}
10851085

10861086
@Override
1087-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1088-
throws IOException {
1087+
public void loadBlock(
1088+
BlockLoader.DoubleBuilder builder,
1089+
BlockLoader.Docs docs,
1090+
int offset,
1091+
BlockDocValuesReader.ToDouble toDouble
1092+
) throws IOException {
10891093
double value = toDouble.convert(0L);
1090-
for (int i = 0; i < docs.count(); i++) {
1094+
for (int i = offset; i < docs.count(); i++) {
10911095
builder.appendDouble(value);
10921096
}
10931097
}
@@ -1169,8 +1173,8 @@ public long longValue() {
11691173
}
11701174

11711175
@Override
1172-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1173-
for (int i = 0; i < docs.count(); i++) {
1176+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1177+
for (int i = offset; i < docs.count(); i++) {
11741178
if (disi.advanceExact(docs.get(i))) {
11751179
builder.appendLong(0L);
11761180
} else {
@@ -1189,8 +1193,8 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOExcepti
11891193
}
11901194

11911195
@Override
1192-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1193-
for (int i = 0; i < docs.count(); i++) {
1196+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1197+
for (int i = offset; i < docs.count(); i++) {
11941198
if (disi.advanceExact(docs.get(i))) {
11951199
builder.appendInt(0);
11961200
} else {
@@ -1209,10 +1213,14 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
12091213
}
12101214

12111215
@Override
1212-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1213-
throws IOException {
1216+
public void loadBlock(
1217+
BlockLoader.DoubleBuilder builder,
1218+
BlockLoader.Docs docs,
1219+
int offset,
1220+
BlockDocValuesReader.ToDouble toDouble
1221+
) throws IOException {
12141222
double value = toDouble.convert(0L);
1215-
for (int i = 0; i < docs.count(); i++) {
1223+
for (int i = offset; i < docs.count(); i++) {
12161224
if (disi.advanceExact(docs.get(i))) {
12171225
builder.appendDouble(value);
12181226
} else {
@@ -1307,8 +1315,8 @@ private void loadCurrentBlock(int blockIndex) throws IOException {
13071315
}
13081316

13091317
@Override
1310-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1311-
for (int i = 0; i < docs.count(); i++) {
1318+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1319+
for (int i = offset; i < docs.count(); i++) {
13121320
doc = docs.get(i);
13131321
builder.appendLong(longValue());
13141322
}
@@ -1343,8 +1351,8 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOExcepti
13431351
}
13441352

13451353
@Override
1346-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1347-
for (int i = 0; i < docs.count(); i++) {
1354+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1355+
for (int i = offset; i < docs.count(); i++) {
13481356
doc = docs.get(i);
13491357
builder.appendInt(Math.toIntExact(longValue()));
13501358
}
@@ -1381,9 +1389,13 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
13811389
}
13821390

13831391
@Override
1384-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1385-
throws IOException {
1386-
for (int i = 0; i < docs.count(); i++) {
1392+
public void loadBlock(
1393+
BlockLoader.DoubleBuilder builder,
1394+
BlockLoader.Docs docs,
1395+
int offset,
1396+
BlockDocValuesReader.ToDouble toDouble
1397+
) throws IOException {
1398+
for (int i = offset; i < docs.count(); i++) {
13871399
doc = docs.get(i);
13881400
builder.appendDouble(toDouble.convert(longValue()));
13891401
}
@@ -1463,10 +1475,10 @@ public long longValue() throws IOException {
14631475
}
14641476

14651477
@Override
1466-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1478+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
14671479
// TODO: collect all doc ids for current block and then append values to builder?
14681480

1469-
for (int i = 0; i < docs.count(); i++) {
1481+
for (int i = offset; i < docs.count(); i++) {
14701482
int docId = docs.get(i);
14711483
if (disi.advanceExact(docId)) {
14721484
builder.appendLong(longValue());
@@ -1486,10 +1498,10 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOExcepti
14861498
}
14871499

14881500
@Override
1489-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1501+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
14901502
// TODO: collect all doc ids for current block and then append values to builder?
14911503

1492-
for (int i = 0; i < docs.count(); i++) {
1504+
for (int i = offset; i < docs.count(); i++) {
14931505
int docId = docs.get(i);
14941506
if (disi.advanceExact(docId)) {
14951507
int value = Math.toIntExact(longValue());
@@ -1511,11 +1523,15 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
15111523
}
15121524

15131525
@Override
1514-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1515-
throws IOException {
1526+
public void loadBlock(
1527+
BlockLoader.DoubleBuilder builder,
1528+
BlockLoader.Docs docs,
1529+
int offset,
1530+
BlockDocValuesReader.ToDouble toDouble
1531+
) throws IOException {
15161532
// TODO: collect all doc ids for current block and then append values to builder?
15171533

1518-
for (int i = 0; i < docs.count(); i++) {
1534+
for (int i = offset; i < docs.count(); i++) {
15191535
int docId = docs.get(i);
15201536
if (disi.advanceExact(docId)) {
15211537
double value = toDouble.convert(longValue());
@@ -1638,8 +1654,8 @@ public int docValueCount() {
16381654
}
16391655

16401656
@Override
1641-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1642-
for (int i = 0; i < docs.count(); i++) {
1657+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1658+
for (int i = offset; i < docs.count(); i++) {
16431659
doc = docs.get(i);
16441660
start = addresses.get(doc);
16451661
end = addresses.get(doc + 1L);
@@ -1676,8 +1692,8 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOExcepti
16761692
}
16771693

16781694
@Override
1679-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1680-
for (int i = 0; i < docs.count(); i++) {
1695+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1696+
for (int i = offset; i < docs.count(); i++) {
16811697
int docId = docs.get(i);
16821698
start = addresses.get(docId);
16831699
end = addresses.get(docId + 1L);
@@ -1718,9 +1734,13 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
17181734
}
17191735

17201736
@Override
1721-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1722-
throws IOException {
1723-
for (int i = 0; i < docs.count(); i++) {
1737+
public void loadBlock(
1738+
BlockLoader.DoubleBuilder builder,
1739+
BlockLoader.Docs docs,
1740+
int offset,
1741+
BlockDocValuesReader.ToDouble toDouble
1742+
) throws IOException {
1743+
for (int i = offset; i < docs.count(); i++) {
17241744
doc = docs.get(i);
17251745
start = addresses.get(doc);
17261746
end = addresses.get(doc + 1L);
@@ -1808,8 +1828,8 @@ public long nextValue() throws IOException {
18081828
}
18091829

18101830
@Override
1811-
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs) throws IOException {
1812-
for (int i = 0; i < docs.count(); i++) {
1831+
public void loadBlock(BlockLoader.LongBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1832+
for (int i = offset; i < docs.count(); i++) {
18131833
if (disi.advanceExact(docs.get(i))) {
18141834
set();
18151835
if (count == 1) {
@@ -1846,8 +1866,8 @@ public void loadDoc(BlockLoader.LongBuilder builder, int docId) throws IOExcepti
18461866
}
18471867

18481868
@Override
1849-
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs) throws IOException {
1850-
for (int i = 0; i < docs.count(); i++) {
1869+
public void loadBlock(BlockLoader.IntBuilder builder, BlockLoader.Docs docs, int offset) throws IOException {
1870+
for (int i = offset; i < docs.count(); i++) {
18511871
if (disi.advanceExact(docs.get(i))) {
18521872
set();
18531873
if (count == 1) {
@@ -1888,9 +1908,13 @@ public void loadDoc(BlockLoader.IntBuilder builder, int docId) throws IOExceptio
18881908
}
18891909

18901910
@Override
1891-
public void loadBlock(BlockLoader.DoubleBuilder builder, BlockLoader.Docs docs, BlockDocValuesReader.ToDouble toDouble)
1892-
throws IOException {
1893-
for (int i = 0; i < docs.count(); i++) {
1911+
public void loadBlock(
1912+
BlockLoader.DoubleBuilder builder,
1913+
BlockLoader.Docs docs,
1914+
int offset,
1915+
BlockDocValuesReader.ToDouble toDouble
1916+
) throws IOException {
1917+
for (int i = offset; i < docs.count(); i++) {
18941918
if (disi.advanceExact(docs.get(i))) {
18951919
set();
18961920
if (count == 1) {

server/src/main/java/org/elasticsearch/index/mapper/BlockDocValuesReader.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -186,9 +186,9 @@ private static class BlockAwareSingletonLongs extends BlockDocValuesReader {
186186
}
187187

188188
@Override
189-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
190-
try (BlockLoader.LongBuilder builder = factory.longsFromDocValues(docs.count())) {
191-
blockAware.loadBlock(builder, docs);
189+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
190+
try (BlockLoader.LongBuilder builder = factory.longsFromDocValues(docs.count() - offset)) {
191+
blockAware.loadBlock(builder, docs, offset);
192192
return builder.build();
193193
}
194194
}
@@ -275,9 +275,9 @@ private static class BlockAwareLongs extends BlockDocValuesReader {
275275
}
276276

277277
@Override
278-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
279-
try (BlockLoader.LongBuilder builder = factory.longsFromDocValues(docs.count())) {
280-
blockAware.loadBlock(builder, docs);
278+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
279+
try (BlockLoader.LongBuilder builder = factory.longsFromDocValues(docs.count() - offset)) {
280+
blockAware.loadBlock(builder, docs, offset);
281281
return builder.build();
282282
}
283283
}
@@ -397,9 +397,9 @@ private static class BlockAwareSingletonInts extends BlockDocValuesReader {
397397
}
398398

399399
@Override
400-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
401-
try (BlockLoader.IntBuilder builder = factory.intsFromDocValues(docs.count())) {
402-
blockAware.loadBlock(builder, docs);
400+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
401+
try (BlockLoader.IntBuilder builder = factory.intsFromDocValues(docs.count() - offset)) {
402+
blockAware.loadBlock(builder, docs, offset);
403403
return builder.build();
404404
}
405405
}
@@ -486,9 +486,9 @@ private static class BlockAwareInts extends BlockDocValuesReader {
486486
}
487487

488488
@Override
489-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
490-
try (BlockLoader.IntBuilder builder = factory.intsFromDocValues(docs.count())) {
491-
blockAware.loadBlock(builder, docs);
489+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
490+
try (BlockLoader.IntBuilder builder = factory.intsFromDocValues(docs.count() - offset)) {
491+
blockAware.loadBlock(builder, docs, offset);
492492
return builder.build();
493493
}
494494
}
@@ -626,9 +626,9 @@ private static class BlockAwareSingletonDoubles extends BlockDocValuesReader {
626626
}
627627

628628
@Override
629-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
630-
try (BlockLoader.DoubleBuilder builder = factory.doublesFromDocValues(docs.count())) {
631-
blockAware.loadBlock(builder, docs, toDouble);
629+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
630+
try (BlockLoader.DoubleBuilder builder = factory.doublesFromDocValues(docs.count() - offset)) {
631+
blockAware.loadBlock(builder, docs, offset, toDouble);
632632
return builder.build();
633633
}
634634
}
@@ -718,9 +718,9 @@ private static class BlockAwareDoubles extends BlockDocValuesReader {
718718
}
719719

720720
@Override
721-
public BlockLoader.Block read(BlockFactory factory, Docs docs) throws IOException {
722-
try (BlockLoader.DoubleBuilder builder = factory.doublesFromDocValues(docs.count())) {
723-
blockAware.loadBlock(builder, docs, toDouble);
721+
public BlockLoader.Block read(BlockFactory factory, Docs docs, int offset) throws IOException {
722+
try (BlockLoader.DoubleBuilder builder = factory.doublesFromDocValues(docs.count() - offset)) {
723+
blockAware.loadBlock(builder, docs, offset, toDouble);
724724
return builder.build();
725725
}
726726
}

0 commit comments

Comments
 (0)