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

Function onWriteOrDeleteData

src/Databases/MySQL/MaterializeMySQLSyncThread.cpp:502–515  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

500
501template <Int8 sign>
502static size_t onWriteOrDeleteData(const Row & rows_data, Block & buffer)
503{
504 size_t prev_bytes = buffer.bytes();
505 for (size_t column = 0; column < buffer.columns() - 1; ++column)
506 {
507 MutableColumnPtr col_to = IColumn::mutate(std::move(buffer.getByPosition(column).column));
508
509 writeFieldsToColumn(*col_to, rows_data, column, {});
510 buffer.getByPosition(column).column = std::move(col_to);
511 }
512
513 fillSignColumnsData(buffer, sign, rows_data.size());
514 return buffer.bytes() - prev_bytes;
515}
516
517/// We need to use unique key instead of sorting key as user could use table override func
518static inline bool differenceUniqueKeys(const Tuple & row_old_data, const Tuple & row_new_data, const std::vector<size_t> unique_columns_index)

Callers

nothing calls this directly

Calls 5

writeFieldsToColumnFunction · 0.85
fillSignColumnsDataFunction · 0.85
columnsMethod · 0.80
bytesMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected