Backport #71388 to 24.3: Fix error Invalid number of rows in Chunk with Variant column

This commit is contained in:
robot-clickhouse 2024-11-07 18:07:33 +00:00
parent 1afbd79d3d
commit 7a7a6e17ee
3 changed files with 7 additions and 1 deletions

View File

@ -815,7 +815,7 @@ ColumnPtr ColumnVariant::permute(const Permutation & perm, size_t limit) const
if (hasOnlyNulls())
{
if (limit)
return cloneResized(limit);
return cloneResized(limit ? std::min(size(), limit) : size());
/// If no limit, we can just return current immutable column.
return this->getPtr();

View File

@ -0,0 +1,6 @@
set allow_experimental_variant_type=1;
create table test (x UInt64, d Variant(UInt64)) engine=Memory;
insert into test select number, null from numbers(200000);
select d from test order by d::String limit 32213 format Null;
drop table test;