Skip to content

Commit af75384

Browse files
committed
Align with the APIs documentation of ColumnVector's get methods
1 parent b06fb5b commit af75384

4 files changed

Lines changed: 5 additions & 3 deletions

File tree

common/src/main/java/org/apache/comet/vector/CometListVector.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public CometListVector(
4545

4646
@Override
4747
public ColumnarArray getArray(int i) {
48+
if (isNullAt(i)) return null;
4849
int start = listVector.getOffsetBuffer().getInt(i * ListVector.OFFSET_WIDTH);
4950
int end = listVector.getOffsetBuffer().getInt((i + 1) * ListVector.OFFSET_WIDTH);
5051

common/src/main/java/org/apache/comet/vector/CometMapVector.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ public CometMapVector(
6565

6666
@Override
6767
public ColumnarMap getMap(int i) {
68+
if (isNullAt(i)) return null;
6869
int start = mapVector.getOffsetBuffer().getInt(i * MapVector.OFFSET_WIDTH);
6970
int end = mapVector.getOffsetBuffer().getInt((i + 1) * MapVector.OFFSET_WIDTH);
7071

common/src/main/java/org/apache/comet/vector/CometPlainVector.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ public double getDouble(int rowId) {
123123

124124
@Override
125125
public UTF8String getUTF8String(int rowId) {
126+
if (isNullAt(rowId)) return null;
126127
if (!isBaseFixedWidthVector) {
127128
BaseVariableWidthVector varWidthVector = (BaseVariableWidthVector) valueVector;
128129
long offsetBufferAddress = varWidthVector.getOffsetBuffer().memoryAddress();
@@ -147,9 +148,7 @@ public UTF8String getUTF8String(int rowId) {
147148

148149
@Override
149150
public byte[] getBinary(int rowId) {
150-
if (isNullAt(rowId)) {
151-
return null;
152-
}
151+
if (isNullAt(rowId)) return null;
153152
int offset;
154153
int length;
155154
if (valueVector instanceof BaseVariableWidthVector) {

common/src/main/java/org/apache/comet/vector/CometVector.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ public boolean isFixedLength() {
8585

8686
@Override
8787
public Decimal getDecimal(int i, int precision, int scale) {
88+
if (isNullAt(i)) return null;
8889
if (!useDecimal128 && precision <= Decimal.MAX_INT_DIGITS() && type instanceof IntegerType) {
8990
return createDecimal(getInt(i), precision, scale);
9091
} else if (precision <= Decimal.MAX_LONG_DIGITS()) {

0 commit comments

Comments
 (0)