MCPcopy Create free account
hub / github.com/ByConity/ByConity / assertSameColumns

Function assertSameColumns

src/Processors/Transforms/WindowTransform.cpp:1306–1336  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1304}
1305
1306static void assertSameColumns(const Columns & left_all,
1307 const Columns & right_all)
1308{
1309 assert(left_all.size() == right_all.size());
1310
1311 for (size_t i = 0; i < left_all.size(); ++i)
1312 {
1313 const auto * left_column = left_all[i].get();
1314 const auto * right_column = right_all[i].get();
1315
1316 assert(left_column);
1317 assert(right_column);
1318
1319 if (const auto * left_lc = typeid_cast<const ColumnLowCardinality *>(left_column))
1320 left_column = left_lc->getDictionary().getNestedColumn().get();
1321
1322 if (const auto * right_lc = typeid_cast<const ColumnLowCardinality *>(right_column))
1323 right_column = right_lc->getDictionary().getNestedColumn().get();
1324
1325 assert(typeid(*left_column).hash_code()
1326 == typeid(*right_column).hash_code());
1327
1328 if (isColumnConst(*left_column))
1329 {
1330 Field left_value = assert_cast<const ColumnConst &>(*left_column).getField();
1331 Field right_value = assert_cast<const ColumnConst &>(*right_column).getField();
1332
1333 assert(left_value == right_value);
1334 }
1335 }
1336}
1337
1338void WindowTransform::appendChunk(Chunk & chunk)
1339{

Callers 1

appendChunkMethod · 0.85

Calls 5

isColumnConstFunction · 0.85
sizeMethod · 0.45
getMethod · 0.45
getDictionaryMethod · 0.45
getFieldMethod · 0.45

Tested by

no test coverage detected