mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 23:21:59 +00:00
Fix counting column size in wide part for Dynamid and JSON types
This commit is contained in:
parent
ea806b05a0
commit
020b69647a
@ -108,7 +108,7 @@ ColumnSize MergeTreeDataPartWide::getColumnSizeImpl(
|
||||
auto mrk_checksum = checksums.files.find(*stream_name + getMarksFileExtension());
|
||||
if (mrk_checksum != checksums.files.end())
|
||||
size.marks += mrk_checksum->second.file_size;
|
||||
});
|
||||
}, column.type, getColumnSample(column));
|
||||
|
||||
return size;
|
||||
}
|
||||
|
@ -172,7 +172,7 @@ size_t MergeTreeReaderWide::readRows(
|
||||
throw;
|
||||
}
|
||||
|
||||
if (column->empty())
|
||||
if (column->empty() && max_rows_to_read > 0)
|
||||
res_columns[pos] = nullptr;
|
||||
}
|
||||
|
||||
|
@ -0,0 +1 @@
|
||||
test 10.00 million 352.87 MiB 39.43 MiB 39.45 MiB
|
@ -0,0 +1,22 @@
|
||||
-- Tags: no-random-settings
|
||||
|
||||
set allow_experimental_dynamic_type = 1;
|
||||
set allow_experimental_json_type = 1;
|
||||
|
||||
drop table if exists test;
|
||||
create table test (d Dynamic, json JSON) engine=MergeTree order by tuple() settings min_rows_for_wide_part=0, min_bytes_for_wide_part=1;
|
||||
insert into test select number, '{"a" : 42, "b" : "Hello, World"}' from numbers(10000000);
|
||||
|
||||
SELECT
|
||||
`table`,
|
||||
formatReadableQuantity(sum(rows)) AS rows,
|
||||
formatReadableSize(sum(data_uncompressed_bytes)) AS data_size_uncompressed,
|
||||
formatReadableSize(sum(data_compressed_bytes)) AS data_size_compressed,
|
||||
formatReadableSize(sum(bytes_on_disk)) AS total_size_on_disk
|
||||
FROM system.parts
|
||||
WHERE active AND (database = currentDatabase()) AND (`table` = 'test')
|
||||
GROUP BY `table`
|
||||
ORDER BY `table` ASC;
|
||||
|
||||
drop table test;
|
||||
|
Loading…
Reference in New Issue
Block a user