diff options
author | dakovalkov <dakovalkov@yandex-team.ru> | 2022-02-10 16:47:57 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:47:57 +0300 |
commit | b1375e869a0058e8f583ffd2c09d284203db1c2a (patch) | |
tree | f601a8ccf79397f21dc812fb0d58065258623604 | |
parent | 9968a46231e337bd46eca82216b40f8eadec679c (diff) | |
download | ydb-b1375e869a0058e8f583ffd2c09d284203db1c2a.tar.gz |
Restoring authorship annotation for <dakovalkov@yandex-team.ru>. Commit 1 of 2.
13 files changed, 228 insertions, 228 deletions
diff --git a/build/rules/contrib_restricted.policy b/build/rules/contrib_restricted.policy index a83ead1904..514c466729 100644 --- a/build/rules/contrib_restricted.policy +++ b/build/rules/contrib_restricted.policy @@ -29,9 +29,9 @@ ALLOW clickhouse -> contrib/restricted/fast_float # because it the best best open source hash table framework (swiss hash tables, hash functions) ALLOW clickhouse -> contrib/restricted/abseil-cpp -# TurboBase64 is a fast vectorized library for encoding/decoding base64. -ALLOW clickhouse -> contrib/restricted/turbo_base64 - +# TurboBase64 is a fast vectorized library for encoding/decoding base64. +ALLOW clickhouse -> contrib/restricted/turbo_base64 + # For HBase client: CONTRIB-1790 ALLOW passport/infra -> contrib/restricted/thrift diff --git a/contrib/libs/poco/Foundation/include/Poco/LogStream.h b/contrib/libs/poco/Foundation/include/Poco/LogStream.h index c3d3f0850a..8bb5717090 100644 --- a/contrib/libs/poco/Foundation/include/Poco/LogStream.h +++ b/contrib/libs/poco/Foundation/include/Poco/LogStream.h @@ -159,13 +159,13 @@ public: /// Sets the priority for log messages to Message::PRIO_TRACE /// and writes the given message. - LogStream& test(); - /// Sets the priority for log messages to Message::PRIO_TEST. - - LogStream& test(const std::string& message); - /// Sets the priority for log messages to Message::PRIO_TEST - /// and writes the given message. - + LogStream& test(); + /// Sets the priority for log messages to Message::PRIO_TEST. + + LogStream& test(const std::string& message); + /// Sets the priority for log messages to Message::PRIO_TEST + /// and writes the given message. + LogStream& priority(Message::Priority priority); /// Sets the priority for log messages. }; diff --git a/contrib/libs/poco/Foundation/include/Poco/Logger.h b/contrib/libs/poco/Foundation/include/Poco/Logger.h index 8dbf8327c8..8e32ad72a6 100644 --- a/contrib/libs/poco/Foundation/include/Poco/Logger.h +++ b/contrib/libs/poco/Foundation/include/Poco/Logger.h @@ -351,34 +351,34 @@ public: void trace(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9); void trace(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9, const Any& value10); - void test(const std::string& msg); - /// If the Logger's log level is at least PRIO_TEST, - /// creates a Message with priority PRIO_TEST - /// and the given message text and sends it - /// to the attached channel. - - void test(const std::string& msg, const char* file, int line); - /// If the Logger's log level is at least PRIO_TEST, - /// creates a Message with priority PRIO_TEST - /// and the given message text and sends it - /// to the attached channel. - /// - /// File must be a static string, such as the value of - /// the __FILE__ macro. The string is not copied - /// internally for performance reasons. - - void test(const std::string& fmt, const Any& value1); - void test(const std::string& fmt, const Any& value1, const Any& value2); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9); - void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9, const Any& value10); - - + void test(const std::string& msg); + /// If the Logger's log level is at least PRIO_TEST, + /// creates a Message with priority PRIO_TEST + /// and the given message text and sends it + /// to the attached channel. + + void test(const std::string& msg, const char* file, int line); + /// If the Logger's log level is at least PRIO_TEST, + /// creates a Message with priority PRIO_TEST + /// and the given message text and sends it + /// to the attached channel. + /// + /// File must be a static string, such as the value of + /// the __FILE__ macro. The string is not copied + /// internally for performance reasons. + + void test(const std::string& fmt, const Any& value1); + void test(const std::string& fmt, const Any& value1, const Any& value2); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9); + void test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9, const Any& value10); + + void dump(const std::string& msg, const void* buffer, std::size_t length, Message::Priority prio = Message::PRIO_DEBUG); /// Logs the given message, followed by the data in buffer. /// @@ -415,9 +415,9 @@ public: bool trace() const; /// Returns true if the log level is at least PRIO_TRACE. - bool test() const; - /// Returns true if the log level is at least PRIO_TEST. - + bool test() const; + /// Returns true if the log level is at least PRIO_TEST. + static std::string format(const std::string& fmt, const std::string& arg); /// Replaces all occurences of $0 in fmt with the string given in arg and /// returns the result. To include a dollar sign in the result string, @@ -511,7 +511,7 @@ public: /// - information /// - debug /// - trace - /// - test + /// - test /// /// The level is not case sensitive. @@ -668,21 +668,21 @@ private: #define poco_trace_f4(logger, fmt, arg1, arg2, arg3, arg4) \ if ((logger).trace()) (logger).trace(Poco::format((fmt), (arg1), (arg2), (arg3), (arg4)), __FILE__, __LINE__); else (void) 0 - - #define poco_test(logger, msg) \ - if ((logger).test()) (logger).test(msg, __FILE__, __LINE__); else (void) 0 - - #define poco_test_f1(logger, fmt, arg1) \ - if ((logger).test()) (logger).test(Poco::format((fmt), (arg1)), __FILE__, __LINE__); else (void) 0 - - #define poco_test_f2(logger, fmt, arg1, arg2) \ - if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2)), __FILE__, __LINE__); else (void) 0 - - #define poco_test_f3(logger, fmt, arg1, arg2, arg3) \ - if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2), (arg3)), __FILE__, __LINE__); else (void) 0 - - #define poco_test_f4(logger, fmt, arg1, arg2, arg3, arg4) \ - if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2), (arg3), (arg4)), __FILE__, __LINE__); else (void) 0 + + #define poco_test(logger, msg) \ + if ((logger).test()) (logger).test(msg, __FILE__, __LINE__); else (void) 0 + + #define poco_test_f1(logger, fmt, arg1) \ + if ((logger).test()) (logger).test(Poco::format((fmt), (arg1)), __FILE__, __LINE__); else (void) 0 + + #define poco_test_f2(logger, fmt, arg1, arg2) \ + if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2)), __FILE__, __LINE__); else (void) 0 + + #define poco_test_f3(logger, fmt, arg1, arg2, arg3) \ + if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2), (arg3)), __FILE__, __LINE__); else (void) 0 + + #define poco_test_f4(logger, fmt, arg1, arg2, arg3, arg4) \ + if ((logger).test()) (logger).test(Poco::format((fmt), (arg1), (arg2), (arg3), (arg4)), __FILE__, __LINE__); else (void) 0 #else #define poco_debug(logger, msg) #define poco_debug_f1(logger, fmt, arg1) @@ -694,11 +694,11 @@ private: #define poco_trace_f2(logger, fmt, arg1, arg2) #define poco_trace_f3(logger, fmt, arg1, arg2, arg3) #define poco_trace_f4(logger, fmt, arg1, arg2, arg3, arg4) - #define poco_test(logger, msg) - #define poco_test_f1(logger, fmt, arg1) - #define poco_test_f2(logger, fmt, arg1, arg2) - #define poco_test_f3(logger, fmt, arg1, arg2, arg3) - #define poco_test_f4(logger, fmt, arg1, arg2, arg3, arg4) + #define poco_test(logger, msg) + #define poco_test_f1(logger, fmt, arg1) + #define poco_test_f2(logger, fmt, arg1, arg2) + #define poco_test_f3(logger, fmt, arg1, arg2, arg3) + #define poco_test_f4(logger, fmt, arg1, arg2, arg3, arg4) #endif @@ -1310,78 +1310,78 @@ inline void Logger::trace(const std::string& fmt, const Any& value1, const Any& log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8, value9, value10), Message::PRIO_TRACE); } -inline void Logger::test(const std::string& msg) -{ - log(msg, Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& msg, const char* file, int line) -{ - log(msg, Message::PRIO_TEST, file, line); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1) -{ - log(Poco::format(fmt, value1), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2) -{ - log(Poco::format(fmt, value1, value2), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3) -{ - log(Poco::format(fmt, value1, value2, value3), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4) -{ - log(Poco::format(fmt, value1, value2, value3, value4), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5, value6), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8, value9), Message::PRIO_TEST); -} - - -inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9, const Any& value10) -{ - log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8, value9, value10), Message::PRIO_TEST); -} - - +inline void Logger::test(const std::string& msg) +{ + log(msg, Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& msg, const char* file, int line) +{ + log(msg, Message::PRIO_TEST, file, line); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1) +{ + log(Poco::format(fmt, value1), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2) +{ + log(Poco::format(fmt, value1, value2), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3) +{ + log(Poco::format(fmt, value1, value2, value3), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4) +{ + log(Poco::format(fmt, value1, value2, value3, value4), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5, value6), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8, value9), Message::PRIO_TEST); +} + + +inline void Logger::test(const std::string& fmt, const Any& value1, const Any& value2, const Any& value3, const Any& value4, const Any& value5, const Any& value6, const Any& value7, const Any& value8, const Any& value9, const Any& value10) +{ + log(Poco::format(fmt, value1, value2, value3, value4, value5, value6, value7, value8, value9, value10), Message::PRIO_TEST); +} + + inline bool Logger::is(int level) const { return _level >= level; @@ -1435,12 +1435,12 @@ inline bool Logger::trace() const return _level >= Message::PRIO_TRACE; } -inline bool Logger::test() const -{ - return _level >= Message::PRIO_TEST; -} - +inline bool Logger::test() const +{ + return _level >= Message::PRIO_TEST; +} + } // namespace Poco diff --git a/contrib/libs/poco/Foundation/include/Poco/Message.h b/contrib/libs/poco/Foundation/include/Poco/Message.h index 8b0c49afa2..4b628bd47f 100644 --- a/contrib/libs/poco/Foundation/include/Poco/Message.h +++ b/contrib/libs/poco/Foundation/include/Poco/Message.h @@ -52,8 +52,8 @@ public: PRIO_NOTICE, /// A notice, which is an information with just a higher priority. PRIO_INFORMATION, /// An informational message, usually denoting the successful completion of an operation. PRIO_DEBUG, /// A debugging message. - PRIO_TRACE, /// A tracing message. This is the lowest priority useful for production. - PRIO_TEST /// A message for test environment. + PRIO_TRACE, /// A tracing message. This is the lowest priority useful for production. + PRIO_TEST /// A message for test environment. }; Message(); diff --git a/contrib/libs/poco/Foundation/src/ConsoleChannel.cpp b/contrib/libs/poco/Foundation/src/ConsoleChannel.cpp index 056e3fa4be..55084896bd 100644 --- a/contrib/libs/poco/Foundation/src/ConsoleChannel.cpp +++ b/contrib/libs/poco/Foundation/src/ConsoleChannel.cpp @@ -105,10 +105,10 @@ void ColorConsoleChannel::setProperty(const std::string& name, const std::string { _enableColors = icompare(value, "true") == 0; } - else if (name == "testColor") - { - _colors[Message::PRIO_TEST] = parseColor(value); - } + else if (name == "testColor") + { + _colors[Message::PRIO_TEST] = parseColor(value); + } else if (name == "traceColor") { _colors[Message::PRIO_TRACE] = parseColor(value); @@ -154,10 +154,10 @@ std::string ColorConsoleChannel::getProperty(const std::string& name) const { return _enableColors ? "true" : "false"; } - else if (name == "testColor") - { - return formatColor(_colors[Message::PRIO_TEST]); - } + else if (name == "testColor") + { + return formatColor(_colors[Message::PRIO_TEST]); + } else if (name == "traceColor") { return formatColor(_colors[Message::PRIO_TRACE]); @@ -274,7 +274,7 @@ void ColorConsoleChannel::initColors() _colors[Message::PRIO_INFORMATION] = CC_DEFAULT; _colors[Message::PRIO_DEBUG] = CC_GRAY; _colors[Message::PRIO_TRACE] = CC_GRAY; - _colors[Message::PRIO_TEST] = CC_GRAY; + _colors[Message::PRIO_TEST] = CC_GRAY; } diff --git a/contrib/libs/poco/Foundation/src/LogStream.cpp b/contrib/libs/poco/Foundation/src/LogStream.cpp index 5377beb9d0..9c0e8844e4 100644 --- a/contrib/libs/poco/Foundation/src/LogStream.cpp +++ b/contrib/libs/poco/Foundation/src/LogStream.cpp @@ -208,19 +208,19 @@ LogStream& LogStream::trace(const std::string& message) } -LogStream& LogStream::test() -{ - return priority(Message::PRIO_TEST); -} - - -LogStream& LogStream::test(const std::string& message) -{ - _buf.logger().test(message); - return priority(Message::PRIO_TEST); -} - - +LogStream& LogStream::test() +{ + return priority(Message::PRIO_TEST); +} + + +LogStream& LogStream::test(const std::string& message) +{ + _buf.logger().test(message); + return priority(Message::PRIO_TEST); +} + + LogStream& LogStream::priority(Message::Priority messagePriority) { _buf.setPriority(messagePriority); diff --git a/contrib/libs/poco/Foundation/src/Logger.cpp b/contrib/libs/poco/Foundation/src/Logger.cpp index 741dac5f19..96adb5cee5 100644 --- a/contrib/libs/poco/Foundation/src/Logger.cpp +++ b/contrib/libs/poco/Foundation/src/Logger.cpp @@ -430,14 +430,14 @@ int Logger::parseLevel(const std::string& level) return Message::PRIO_DEBUG; else if (icompare(level, "trace") == 0) return Message::PRIO_TRACE; - else if (icompare(level, "test") == 0) - return Message::PRIO_TEST; + else if (icompare(level, "test") == 0) + return Message::PRIO_TEST; else { int numLevel; if (Poco::NumberParser::tryParse(level, numLevel)) { - if (numLevel > 0 && numLevel < 10) + if (numLevel > 0 && numLevel < 10) return numLevel; else throw InvalidArgumentException("Log level out of range ", level); diff --git a/contrib/libs/poco/Foundation/src/PatternFormatter.cpp b/contrib/libs/poco/Foundation/src/PatternFormatter.cpp index 728c389aa0..1b7986e19d 100644 --- a/contrib/libs/poco/Foundation/src/PatternFormatter.cpp +++ b/contrib/libs/poco/Foundation/src/PatternFormatter.cpp @@ -231,15 +231,15 @@ namespace "Notice", "Information", "Debug", - "Trace", - "Test" + "Trace", + "Test" }; } const std::string& PatternFormatter::getPriorityName(int prio) { - poco_assert (1 <= prio && prio <= 9); + poco_assert (1 <= prio && prio <= 9); return priorities[prio]; } diff --git a/contrib/libs/poco/Foundation/src/SyslogChannel.cpp b/contrib/libs/poco/Foundation/src/SyslogChannel.cpp index c3d3c15f92..8e00236275 100644 --- a/contrib/libs/poco/Foundation/src/SyslogChannel.cpp +++ b/contrib/libs/poco/Foundation/src/SyslogChannel.cpp @@ -232,7 +232,7 @@ int SyslogChannel::getPrio(const Message& msg) { switch (msg.getPriority()) { - case Message::PRIO_TEST: + case Message::PRIO_TEST: case Message::PRIO_TRACE: case Message::PRIO_DEBUG: return LOG_DEBUG; diff --git a/contrib/libs/poco/Net/src/RemoteSyslogChannel.cpp b/contrib/libs/poco/Net/src/RemoteSyslogChannel.cpp index 8ad6d5b2d0..b2ca971d64 100644 --- a/contrib/libs/poco/Net/src/RemoteSyslogChannel.cpp +++ b/contrib/libs/poco/Net/src/RemoteSyslogChannel.cpp @@ -325,7 +325,7 @@ int RemoteSyslogChannel::getPrio(const Message& msg) { switch (msg.getPriority()) { - case Message::PRIO_TEST: + case Message::PRIO_TEST: case Message::PRIO_TRACE: case Message::PRIO_DEBUG: return SYSLOG_DEBUG; diff --git a/ydb/library/yql/udfs/common/clickhouse/client/src/Interpreters/Aggregator.h b/ydb/library/yql/udfs/common/clickhouse/client/src/Interpreters/Aggregator.h index d7b8ebca83..b3f038f37c 100644 --- a/ydb/library/yql/udfs/common/clickhouse/client/src/Interpreters/Aggregator.h +++ b/ydb/library/yql/udfs/common/clickhouse/client/src/Interpreters/Aggregator.h @@ -506,7 +506,7 @@ struct AggregatedDataVariants : private boost::noncopyable * But this can hardly be done simply because it is planned to put variable-length strings into the same pool. * In this case, the pool will not be able to know with what offsets objects are stored. */ - const Aggregator * aggregator = nullptr; + const Aggregator * aggregator = nullptr; size_t keys_size{}; /// Number of keys. NOTE do we need this field? Sizes key_sizes; /// Dimensions of keys, if keys of fixed length @@ -975,15 +975,15 @@ public: /// Process one block. Return false if the processing should be aborted (with group_by_overflow_mode = 'break'). bool executeOnBlock(const Block & block, AggregatedDataVariants & result, ColumnRawPtrs & key_columns, AggregateColumns & aggregate_columns, /// Passed to not create them anew for each block - bool & no_more_keys) const; + bool & no_more_keys) const; bool executeOnBlock(Columns columns, UInt64 num_rows, AggregatedDataVariants & result, ColumnRawPtrs & key_columns, AggregateColumns & aggregate_columns, /// Passed to not create them anew for each block - bool & no_more_keys) const; - - /// Used for aggregate projection. - bool mergeOnBlock(Block block, AggregatedDataVariants & result, bool & no_more_keys) const; + bool & no_more_keys) const; + /// Used for aggregate projection. + bool mergeOnBlock(Block block, AggregatedDataVariants & result, bool & no_more_keys) const; + /** Convert the aggregation data structure into a block. * If overflow_row = true, then aggregates for rows that are not included in max_rows_to_group_by are put in the first block. * @@ -1008,11 +1008,11 @@ public: /** Split block with partially-aggregated data to many blocks, as if two-level method of aggregation was used. * This is needed to simplify merging of that data with other results, that are already two-level. */ - std::vector<Block> convertBlockToTwoLevel(const Block & block) const; + std::vector<Block> convertBlockToTwoLevel(const Block & block) const; /// For external aggregation. - void writeToTemporaryFile(AggregatedDataVariants & data_variants, const String & tmp_path) const; - void writeToTemporaryFile(AggregatedDataVariants & data_variants) const; + void writeToTemporaryFile(AggregatedDataVariants & data_variants, const String & tmp_path) const; + void writeToTemporaryFile(AggregatedDataVariants & data_variants) const; bool hasTemporaryFiles() const { return !temporary_files.empty(); } @@ -1084,7 +1084,7 @@ private: Poco::Logger * log = &Poco::Logger::get("Aggregator"); /// For external aggregation. - mutable TemporaryFiles temporary_files; + mutable TemporaryFiles temporary_files; #if USE_EMBEDDED_COMPILER std::shared_ptr<CompiledAggregateFunctionsHolder> compiled_aggregate_functions_holder; @@ -1107,7 +1107,7 @@ private: /** Call `destroy` methods for states of aggregate functions. * Used in the exception handler for aggregation, since RAII in this case is not applicable. */ - void destroyAllAggregateStates(AggregatedDataVariants & result) const; + void destroyAllAggregateStates(AggregatedDataVariants & result) const; /// Process one data block, aggregate the data into a hash table. @@ -1137,7 +1137,7 @@ private: AggregatedDataWithoutKey & res, size_t rows, AggregateFunctionInstruction * aggregate_instructions, - Arena * arena) const; + Arena * arena) const; static void executeOnIntervalWithoutKeyImpl( AggregatedDataWithoutKey & res, @@ -1150,7 +1150,7 @@ private: void writeToTemporaryFileImpl( AggregatedDataVariants & data_variants, Method & method, - IBlockOutputStream & out) const; + IBlockOutputStream & out) const; /// Merge NULL key data from hash table `src` into `dst`. template <typename Method, typename Table> @@ -1305,7 +1305,7 @@ private: AggregateColumns & aggregate_columns, Columns & materialized_columns, AggregateFunctionInstructions & instructions, - NestedColumnsHolder & nested_columns_holder) const; + NestedColumnsHolder & nested_columns_holder) const; void addSingleKeyToAggregateColumns( const AggregatedDataVariants & data_variants, diff --git a/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.cpp b/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.cpp index a8a93e5366..2f3a914a99 100644 --- a/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.cpp +++ b/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.cpp @@ -395,14 +395,14 @@ AggregatingTransform::AggregatingTransform(Block header, AggregatingTransformPar } AggregatingTransform::AggregatingTransform( - Block header, - AggregatingTransformParamsPtr params_, - ManyAggregatedDataPtr many_data_, - size_t current_variant, - size_t max_threads_, - size_t temporary_data_merge_threads_) - : IProcessor({std::move(header)}, {params_->getHeader()}) - , params(std::move(params_)) + Block header, + AggregatingTransformParamsPtr params_, + ManyAggregatedDataPtr many_data_, + size_t current_variant, + size_t max_threads_, + size_t temporary_data_merge_threads_) + : IProcessor({std::move(header)}, {params_->getHeader()}) + , params(std::move(params_)) , key_columns(params->params.keys_size) , aggregate_columns(params->params.aggregates_size) , many_data(std::move(many_data_)) @@ -530,7 +530,7 @@ void AggregatingTransform::consume(Chunk chunk) { auto block = getInputs().front().getHeader().cloneWithColumns(chunk.detachColumns()); block = materializeBlock(block); - if (!params->aggregator.mergeOnBlock(block, variants, no_more_keys)) + if (!params->aggregator.mergeOnBlock(block, variants, no_more_keys)) is_consume_finished = true; } else @@ -552,7 +552,7 @@ void AggregatingTransform::initGenerate() if (variants.empty() && params->params.keys_size == 0 && !params->params.empty_result_for_aggregation_by_empty_set) { if (params->only_merge) - params->aggregator.mergeOnBlock(getInputs().front().getHeader(), variants, no_more_keys); + params->aggregator.mergeOnBlock(getInputs().front().getHeader(), variants, no_more_keys); else params->aggregator.executeOnBlock(getInputs().front().getHeader(), variants, key_columns, aggregate_columns, no_more_keys); } diff --git a/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.h b/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.h index 1639bc4df4..cf4ea72f8b 100644 --- a/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.h +++ b/ydb/library/yql/udfs/common/clickhouse/client/src/Processors/Transforms/AggregatingTransform.h @@ -27,39 +27,39 @@ public: class IBlockInputStream; using BlockInputStreamPtr = std::shared_ptr<IBlockInputStream>; -using AggregatorList = std::list<Aggregator>; -using AggregatorListPtr = std::shared_ptr<AggregatorList>; - +using AggregatorList = std::list<Aggregator>; +using AggregatorListPtr = std::shared_ptr<AggregatorList>; + struct AggregatingTransformParams { Aggregator::Params params; - - /// Each params holds a list of aggregators which are used in query. It's needed because we need - /// to use a pointer of aggregator to proper destroy complex aggregation states on exception - /// (See comments in AggregatedDataVariants). However, this pointer might not be valid because - /// we can have two different aggregators at the same time due to mixed pipeline of aggregate - /// projections, and one of them might gets destroyed before used. - AggregatorListPtr aggregator_list_ptr; - Aggregator & aggregator; + + /// Each params holds a list of aggregators which are used in query. It's needed because we need + /// to use a pointer of aggregator to proper destroy complex aggregation states on exception + /// (See comments in AggregatedDataVariants). However, this pointer might not be valid because + /// we can have two different aggregators at the same time due to mixed pipeline of aggregate + /// projections, and one of them might gets destroyed before used. + AggregatorListPtr aggregator_list_ptr; + Aggregator & aggregator; bool final; bool only_merge = false; AggregatingTransformParams(const Aggregator::Params & params_, bool final_) - : params(params_) - , aggregator_list_ptr(std::make_shared<AggregatorList>()) - , aggregator(*aggregator_list_ptr->emplace(aggregator_list_ptr->end(), params)) - , final(final_) - { - } - - AggregatingTransformParams(const Aggregator::Params & params_, const AggregatorListPtr & aggregator_list_ptr_, bool final_) - : params(params_) - , aggregator_list_ptr(aggregator_list_ptr_) - , aggregator(*aggregator_list_ptr->emplace(aggregator_list_ptr->end(), params)) - , final(final_) - { - } - + : params(params_) + , aggregator_list_ptr(std::make_shared<AggregatorList>()) + , aggregator(*aggregator_list_ptr->emplace(aggregator_list_ptr->end(), params)) + , final(final_) + { + } + + AggregatingTransformParams(const Aggregator::Params & params_, const AggregatorListPtr & aggregator_list_ptr_, bool final_) + : params(params_) + , aggregator_list_ptr(aggregator_list_ptr_) + , aggregator(*aggregator_list_ptr->emplace(aggregator_list_ptr->end(), params)) + , final(final_) + { + } + Block getHeader() const { return aggregator.getHeader(final); } Block getCustomHeader(bool final_) const { return aggregator.getHeader(final_); } @@ -105,13 +105,13 @@ public: AggregatingTransform(Block header, AggregatingTransformParamsPtr params_); /// For Parallel aggregating. - AggregatingTransform( - Block header, - AggregatingTransformParamsPtr params_, - ManyAggregatedDataPtr many_data, - size_t current_variant, - size_t max_threads, - size_t temporary_data_merge_threads); + AggregatingTransform( + Block header, + AggregatingTransformParamsPtr params_, + ManyAggregatedDataPtr many_data, + size_t current_variant, + size_t max_threads, + size_t temporary_data_merge_threads); ~AggregatingTransform() override; String getName() const override { return "AggregatingTransform"; } |