dbms: Fixed leak [#METR-9750]. Enabled warning, fixed potential errors.

This commit is contained in:
Alexey Milovidov 2014-02-23 04:37:25 +04:00
parent 7ff4b92ee8
commit 05615da00a
4 changed files with 12 additions and 7 deletions

View File

@ -51,7 +51,8 @@ public:
* Для неконстантных столбцов arguments[i].column=NULL.
* Осмысленные типы элементов в out_prerequisites: APPLY_FUNCTION, ADD_COLUMN.
*/
virtual void getReturnTypeAndPrerequisites(const ColumnsWithNameAndType & arguments,
virtual void getReturnTypeAndPrerequisites(
const ColumnsWithNameAndType & arguments,
DataTypePtr & out_return_type,
ExpressionActions::Actions & out_prerequisites)
{
@ -81,6 +82,8 @@ public:
{
execute(block, arguments, result);
}
virtual ~IFunction() {}
};

View File

@ -28,6 +28,8 @@ public:
/// Создать storage в соответствии с запросом
virtual StoragePtr execute(ASTPtr ast_function, Context & context) = 0;
virtual ~ITableFunction() {};
};
typedef SharedPtr<ITableFunction> TableFunctionPtr;

View File

@ -13,11 +13,11 @@ namespace DB
* remote('address', db, table) - создаёт временный StorageDistributed.
* Чтобы получить структуру таблицы, делается запрос DESC TABLE на удалённый сервер.
* Например:
* SELECT count() FROM remote('example01-01-1', merge, hits) - пойти на example01-01-1, в БД merge, таблицу hits. *
* SELECT count() FROM remote('example01-01-1', merge, hits) - пойти на example01-01-1, в БД merge, таблицу hits.
* В качестве имени хоста может быть указано также выражение, генерирующее множество шардов и реплик - см. ниже.
*/
/// Пока не реализована.
class TableFunctionRemote: public ITableFunction
class TableFunctionRemote : public ITableFunction
{
public:
/// Максимальное количество различных шардов и максимальное количество реплик одного шарда