From 2d0b3c97d5e4b65010889940124d1d1bba727d45 Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Sat, 13 Oct 2012 02:12:50 +0000 Subject: [PATCH] dbms: tiny modification [#CONV-2944]. --- dbms/include/DB/DataStreams/FilterBlockInputStream.h | 11 +++-------- dbms/src/DataStreams/FilterBlockInputStream.cpp | 4 +--- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/dbms/include/DB/DataStreams/FilterBlockInputStream.h b/dbms/include/DB/DataStreams/FilterBlockInputStream.h index 9eb34d33fe8..e6e87044570 100644 --- a/dbms/include/DB/DataStreams/FilterBlockInputStream.h +++ b/dbms/include/DB/DataStreams/FilterBlockInputStream.h @@ -18,19 +18,14 @@ using Poco::SharedPtr; class FilterBlockInputStream : public IProfilingBlockInputStream { public: - /// filter_column_ - номер столбца с условиями фильтрации. -1 - последний столбец - FilterBlockInputStream(BlockInputStreamPtr input_, ssize_t filter_column_ = -1); + /// filter_column_ - номер столбца с условиями фильтрации. + FilterBlockInputStream(BlockInputStreamPtr input_, ssize_t filter_column_); FilterBlockInputStream(BlockInputStreamPtr input_, const String & filter_column_name_); Block readImpl(); String getName() const { return "FilterBlockInputStream"; } - BlockInputStreamPtr clone() - { - return filter_column_name.empty() - ? new FilterBlockInputStream(input, filter_column) - : new FilterBlockInputStream(input, filter_column_name); - } + BlockInputStreamPtr clone() { return new FilterBlockInputStream(input, filter_column); } private: BlockInputStreamPtr input; diff --git a/dbms/src/DataStreams/FilterBlockInputStream.cpp b/dbms/src/DataStreams/FilterBlockInputStream.cpp index c32b5222ac5..52c9f7df76b 100644 --- a/dbms/src/DataStreams/FilterBlockInputStream.cpp +++ b/dbms/src/DataStreams/FilterBlockInputStream.cpp @@ -36,10 +36,8 @@ Block FilterBlockInputStream::readImpl() throw Exception("There is only filter column in block.", ErrorCodes::ONLY_FILTER_COLUMN_IN_BLOCK); /// Найдём настоящую позицию столбца с фильтром в блоке. - if (!filter_column_name.empty()) + if (filter_column == -1) filter_column = res.getPositionByName(filter_column_name); - else if (filter_column < 0) - filter_column = static_cast(res.columns()) + filter_column; /// Любой столбец - не являющийся фильтром. IColumn & any_not_filter_column = *res.getByPosition(filter_column == 0 ? 1 : 0).column;