| 1365 | for (int i = 0; i < numRows; ++i) { |
| 1366 | if (filterInputRows_.isValid(i) && |
| 1367 | !nonNullInputRows_.isValid(rawMapping[i])) { |
| 1368 | filterInputRows_.setValid(i, false); |
| 1369 | } |
| 1370 | } |
| 1371 | filterInputRows_.updateBounds(); |
| 1372 | } |
| 1373 | } |
| 1374 | |
| 1375 | namespace { |
| 1376 | |
| 1377 | const uint64_t* getFlatFilterResult(VectorPtr& result) { |
| 1378 | if (!result->isFlatEncoding()) { |
| 1379 | return nullptr; |
| 1380 | } |
| 1381 | auto* flat = result->asUnchecked<FlatVector<bool>>(); |
| 1382 | if (!flat->mayHaveNulls()) { |
| 1383 | return flat->rawValues<uint64_t>(); |
| 1384 | } |
| 1385 | if (!flat->rawValues<uint64_t>()) { |
| 1386 | return flat->rawNulls(); |
| 1387 | } |
no test coverage detected