```sql
CREATE TABLE t
(
   id Int64, 
   d String,
   p Map(String, String)
   
)
ENGINE = ReplacingMergeTree order by id settings index_granularity  = 0;


insert into t values (1,  's', {'a':'b'});

CH starts eating RAM until it crashes

the same with

insert into t select 1,  's', map('a','b');

```

auto normal_result_ptr = reader.estimateNumMarksToRead(
            normal_parts,
            query_info.prewhere_info,
            required_columns,
            storage_snapshot->metadata,
            storage_snapshot->metadata,
            query_info, 
            added_filter_nodes,
            query_context,
            settings.max_threads,
            max_added_blocks);
        if (normal_result_ptr->error())
            return;
        if (normal_result_ptr->marks() == 0)
            candidate.complete = true;
        else
        {
            sum_marks += normal_result_ptr->marks();
            candidate.merge_tree_normal_select_result_ptr = normal_result_ptr;
        }
    }
    candidate.merge_tree_projection_select_result_ptr = projection_result_ptr;
    
    if (sum_marks < min_sum_marks)
    {
        selected_candidate = &candidate;
        min_sum_marks = sum_marks;
    }
}
Block MergeTreeData::getMinMaxCountProjectionBlock(