```
milovidov-desktop :) CREATE TABLE perf_lc_num(　        num UInt8,　        arr Array(LowCardinality(Int64)) default [num]　        ) ENGINE = TinyLog

CREATE TABLE perf_lc_num
(
    `num` UInt8,
    `arr` Array(LowCardinality(Int64)) DEFAULT [num]
)
ENGINE = TinyLog

Query id: e95f9a71-5795-4dea-8d80-4729fc8016b9

Ok.

0 rows in set. Elapsed: 0.002 sec. 

milovidov-desktop :) INSERT INTO perf_lc_num (num)
:-]         SELECT toUInt8(number)
:-]         FROM numbers(100000000)

INSERT INTO perf_lc_num (num) SELECT toUInt8(number)
FROM numbers(100000000)

Query id: 1101fd75-a545-4809-acb5-8afa2fae80c0


Received exception from server (version 20.13.1):
Code: 49. DB::Exception: Received from localhost:9000. DB::Exception: Got empty stream for DataTypeLowCardinality keys.: While executing SinkToOutputStream. 

0 rows in set. Elapsed: 0.045 sec. 

milovidov-desktop :) INSERT INTO perf_lc_num (num)　        SELECT toUInt8(number)　        FROM numbers(100000000)

INSERT INTO perf_lc_num (num) SELECT toUInt8(number)
FROM numbers(100000000)

Query id: 0ad8532a-5c6e-4590-84cd-7e00759d152d


Received exception from server (version 20.13.1):
Code: 49. DB::Exception: Received from localhost:9000. DB::Exception: Got empty stream for DataTypeLowCardinality keys.: While executing SinkToOutputStream. 

0 rows in set. Elapsed: 0.033 sec.
```

const ASTPtr &, const StorageMetadataPtr & metadata_snapshot, const Context &, TableExclusiveLockHolder &)
{
    disk->clearDirectory(table_path);
    files.clear();
    file_checker = FileChecker{disk, table_path + "sizes.json"};
    for (const auto & column : metadata_snapshot->getColumns().getAllPhysical())
        addFiles(column.name, *column.type);
}
void registerStorageTinyLog(StorageFactory & factory)
{
    StorageFactory::StorageFeatures features{
        .supports_settings = true
    };
    factory.registerStorage("TinyLog", [](const StorageFactory::Arguments & args)
    {
        if (!args.engine_args.empty())
            throw Exception(
                "Engine " + args.engine_name + " doesn't support any arguments (" + toString(args.engine_args.size()) + " given)",
                ErrorCodes::NUMBER_OF_ARGUMENTS_DOESNT_MATCH);
        String disk_name = getDiskName(*args.storage_def);
        DiskPtr disk = args.context.getDisk(disk_name);
        return StorageTinyLog::create(
            disk, args.relative_data_path, args.table_id, args.columns, args.constraints,
            args.attach, args.context.getSettings().max_compress_block_size);
    }, features);
}
}