**Describe the bug**
https://github.com/ClickHouse/ClickHouse/pull/18899#issuecomment-757571194

const String & name,
    const IDataType & type,
    WrittenOffsetColumns & offset_columns,
    DB::IDataType::SubstreamPath & path)
{
    StreamsWithMarks result;
    type.enumerateStreams([&] (const IDataType::SubstreamPath & substream_path, const IDataType & )
    {
        bool is_offsets = !substream_path.empty() && substream_path.back().type == IDataType::Substream::ArraySizes;
        String stream_name = IDataType::getFileNameForStream(name, substream_path);
        
        if (is_offsets && offset_columns.count(stream_name))
            return;
        Stream & stream = *column_streams[stream_name];
        
        if (stream.compressed.offset() >= settings.min_compress_block_size)
            stream.compressed.next();
        StreamNameAndMark stream_with_mark;
        stream_with_mark.stream_name = stream_name;
        stream_with_mark.mark.offset_in_compressed_file = stream.plain_hashing.count();
        stream_with_mark.mark.offset_in_decompressed_block = stream.compressed.offset();
        result.push_back(stream_with_mark);
    }, path);
    return result;
}
void MergeTreeDataPartWriterWide::writeSingleGranule(