@@ -227,8 +227,11 @@ private void lookup(ProjectionBlock projectionBlock, ValueAcceptor valueAcceptor
227227
228228 @ Override
229229 public int [] transformToIntValuesSV (ProjectionBlock projectionBlock ) {
230+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .INT ) {
231+ return super .transformToIntValuesSV (projectionBlock );
232+ }
230233 int numDocs = projectionBlock .getNumDocs ();
231- if (_intValuesSV == null || _intValuesSV . length < numDocs ) {
234+ if (_intValuesSV == null ) {
232235 _intValuesSV = new int [numDocs ];
233236 }
234237 lookup (projectionBlock , this ::setIntSV );
@@ -237,8 +240,11 @@ public int[] transformToIntValuesSV(ProjectionBlock projectionBlock) {
237240
238241 @ Override
239242 public long [] transformToLongValuesSV (ProjectionBlock projectionBlock ) {
243+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .LONG ) {
244+ return super .transformToLongValuesSV (projectionBlock );
245+ }
240246 int numDocs = projectionBlock .getNumDocs ();
241- if (_longValuesSV == null || _longValuesSV . length < numDocs ) {
247+ if (_longValuesSV == null ) {
242248 _longValuesSV = new long [numDocs ];
243249 }
244250 lookup (projectionBlock , this ::setLongSV );
@@ -247,8 +253,11 @@ public long[] transformToLongValuesSV(ProjectionBlock projectionBlock) {
247253
248254 @ Override
249255 public float [] transformToFloatValuesSV (ProjectionBlock projectionBlock ) {
256+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .FLOAT ) {
257+ return super .transformToFloatValuesSV (projectionBlock );
258+ }
250259 int numDocs = projectionBlock .getNumDocs ();
251- if (_floatValuesSV == null || _floatValuesSV . length < numDocs ) {
260+ if (_floatValuesSV == null ) {
252261 _floatValuesSV = new float [numDocs ];
253262 }
254263 lookup (projectionBlock , this ::setFloatSV );
@@ -257,8 +266,11 @@ public float[] transformToFloatValuesSV(ProjectionBlock projectionBlock) {
257266
258267 @ Override
259268 public double [] transformToDoubleValuesSV (ProjectionBlock projectionBlock ) {
269+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .DOUBLE ) {
270+ return super .transformToDoubleValuesSV (projectionBlock );
271+ }
260272 int numDocs = projectionBlock .getNumDocs ();
261- if (_doubleValuesSV == null || _doubleValuesSV . length < numDocs ) {
273+ if (_doubleValuesSV == null ) {
262274 _doubleValuesSV = new double [numDocs ];
263275 }
264276 lookup (projectionBlock , this ::setDoubleSV );
@@ -267,8 +279,11 @@ public double[] transformToDoubleValuesSV(ProjectionBlock projectionBlock) {
267279
268280 @ Override
269281 public String [] transformToStringValuesSV (ProjectionBlock projectionBlock ) {
282+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .STRING ) {
283+ return super .transformToStringValuesSV (projectionBlock );
284+ }
270285 int numDocs = projectionBlock .getNumDocs ();
271- if (_stringValuesSV == null || _stringValuesSV . length < numDocs ) {
286+ if (_stringValuesSV == null ) {
272287 _stringValuesSV = new String [numDocs ];
273288 }
274289 lookup (projectionBlock , this ::setStringSV );
@@ -277,18 +292,24 @@ public String[] transformToStringValuesSV(ProjectionBlock projectionBlock) {
277292
278293 @ Override
279294 public byte [][] transformToBytesValuesSV (ProjectionBlock projectionBlock ) {
295+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .BYTES ) {
296+ return super .transformToBytesValuesSV (projectionBlock );
297+ }
280298 int numDocs = projectionBlock .getNumDocs ();
281- if (_byteValuesSV == null || _byteValuesSV . length < numDocs ) {
282- _byteValuesSV = new byte [numDocs ][];
299+ if (_bytesValuesSV == null ) {
300+ _bytesValuesSV = new byte [numDocs ][];
283301 }
284302 lookup (projectionBlock , this ::setBytesSV );
285- return _byteValuesSV ;
303+ return _bytesValuesSV ;
286304 }
287305
288306 @ Override
289307 public int [][] transformToIntValuesMV (ProjectionBlock projectionBlock ) {
308+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .INT ) {
309+ return super .transformToIntValuesMV (projectionBlock );
310+ }
290311 int numDocs = projectionBlock .getNumDocs ();
291- if (_intValuesMV == null || _intValuesMV . length < numDocs ) {
312+ if (_intValuesMV == null ) {
292313 _intValuesMV = new int [numDocs ][];
293314 }
294315 lookup (projectionBlock , this ::setIntMV );
@@ -297,8 +318,11 @@ public int[][] transformToIntValuesMV(ProjectionBlock projectionBlock) {
297318
298319 @ Override
299320 public long [][] transformToLongValuesMV (ProjectionBlock projectionBlock ) {
321+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .LONG ) {
322+ return super .transformToLongValuesMV (projectionBlock );
323+ }
300324 int numDocs = projectionBlock .getNumDocs ();
301- if (_longValuesMV == null || _longValuesMV . length < numDocs ) {
325+ if (_longValuesMV == null ) {
302326 _longValuesMV = new long [numDocs ][];
303327 }
304328 lookup (projectionBlock , this ::setLongMV );
@@ -307,8 +331,11 @@ public long[][] transformToLongValuesMV(ProjectionBlock projectionBlock) {
307331
308332 @ Override
309333 public float [][] transformToFloatValuesMV (ProjectionBlock projectionBlock ) {
334+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .FLOAT ) {
335+ return super .transformToFloatValuesMV (projectionBlock );
336+ }
310337 int numDocs = projectionBlock .getNumDocs ();
311- if (_floatValuesMV == null || _floatValuesMV . length < numDocs ) {
338+ if (_floatValuesMV == null ) {
312339 _floatValuesMV = new float [numDocs ][];
313340 }
314341 lookup (projectionBlock , this ::setFloatMV );
@@ -317,8 +344,11 @@ public float[][] transformToFloatValuesMV(ProjectionBlock projectionBlock) {
317344
318345 @ Override
319346 public double [][] transformToDoubleValuesMV (ProjectionBlock projectionBlock ) {
347+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .DOUBLE ) {
348+ return super .transformToDoubleValuesMV (projectionBlock );
349+ }
320350 int numDocs = projectionBlock .getNumDocs ();
321- if (_doubleValuesMV == null || _doubleValuesMV . length < numDocs ) {
351+ if (_doubleValuesMV == null ) {
322352 _doubleValuesMV = new double [numDocs ][];
323353 }
324354 lookup (projectionBlock , this ::setDoubleMV );
@@ -327,8 +357,11 @@ public double[][] transformToDoubleValuesMV(ProjectionBlock projectionBlock) {
327357
328358 @ Override
329359 public String [][] transformToStringValuesMV (ProjectionBlock projectionBlock ) {
360+ if (_lookupColumnFieldSpec .getDataType ().getStoredType () != DataType .STRING ) {
361+ return super .transformToStringValuesMV (projectionBlock );
362+ }
330363 int numDocs = projectionBlock .getNumDocs ();
331- if (_stringValuesMV == null || _stringValuesMV . length < numDocs ) {
364+ if (_stringValuesMV == null ) {
332365 _stringValuesMV = new String [numDocs ][];
333366 }
334367 lookup (projectionBlock , this ::setStringMV );
@@ -377,9 +410,9 @@ private void setStringSV(int index, Object value) {
377410
378411 private void setBytesSV (int index , Object value ) {
379412 if (value instanceof byte []) {
380- _byteValuesSV [index ] = (byte []) value ;
413+ _bytesValuesSV [index ] = (byte []) value ;
381414 } else {
382- _byteValuesSV [index ] = EMPTY_BYTES ;
415+ _bytesValuesSV [index ] = EMPTY_BYTES ;
383416 }
384417 }
385418
0 commit comments