https://s3.amazonaws.com/clickhouse-test-reports/42033/ebdfbf43db5e5eacaff81b4a3dd55c5a285ee025/fuzzer_astfuzzerasan//report.html
How to reproduce:
```
:) create table data_02295 (b Int64, a Int64, grp_aggreg AggregateFunction(groupArrayArray, Array(UInt64))) engine = MergeTree() order by a;
:) set allow_experimental_analyzer=1;
:) SELECT grp_aggreg FROM data_02295 WHERE JSONLength(grp_aggreg, 100, NULL) SETTINGS optimize_aggregation_in_order = 1;
```

CC: @kitaisreal 
ActionsDAG::MatchColumnsMode::Position);
        auto actions = std::make_shared<ExpressionActions>(actions_dag, ExpressionActionsSettings::fromContext(getContext(), CompileExpressions::yes));
        pipeline.addSimpleTransform([&](const Block & in_header) -> ProcessorPtr
        {
            return std::make_shared<ExpressionTransform>(in_header, actions);
        });
        
        
        pipeline.addSimpleTransform([&](const Block & in_header) -> ProcessorPtr
        {
            return std::make_shared<MaterializingTransform>(in_header);
        });
        size_t num_select_threads = pipeline.getNumThreads();
        for (auto & chain : out_chains)
            resources = chain.detachResources();
        pipeline.addChains(std::move(out_chains));
        if (!settings.parallel_view_processing)
        {
            
            if (pipeline.getNumThreads() > num_select_threads)
                pipeline.setMaxThreads(num_select_threads);
        }
        else if (pipeline.getNumThreads() < settings.max_threads)
        {
            
            
            
            
            pipeline.setMaxThreads(settings.max_threads);
        }