22.4.5

```sql
SELECT dummy
FROM cluster(test_cluster_two_shards, system.one)
WHERE dummy IN (
    SELECT dummy
    FROM cluster(test_cluster_two_shards, system.one)
)
LIMIT 1 BY dummy
SETTINGS distributed_product_mode = 'local'


Received exception from server (version 22.4.5):
Code: 43. DB::Exception: Received from localhost:9000. 
DB::Exception: Cannot create column of type Set. (ILLEGAL_TYPE_OF_ARGUMENT)

```

22.3.4.20
```sql
SELECT dummy
FROM cluster(test_cluster_two_shards, system.one)
WHERE dummy IN (
    SELECT dummy
    FROM cluster(test_cluster_two_shards, system.one)
)
LIMIT 1 BY dummy
SETTINGS distributed_product_mode = 'local'

┌─dummy─┐
│     0 │
└───────┘
```
: ExpressionAnalyzer(query_, syntax_analyzer_result_, context_, 0, false, false, {}, {})
    {
    }
    ~ExpressionAnalyzer();
    void appendExpression(ExpressionActionsChain & chain, const ASTPtr & expr, bool only_types);
    
    
    
    
    ActionsDAGPtr getActionsDAG(bool add_aliases, bool project_result = true);
    ExpressionActionsPtr getActions(bool add_aliases, bool project_result = true, CompileExpressions compile_expressions = CompileExpressions::no);
    
    
    ExpressionActionsPtr getConstActions(const ColumnsWithTypeAndName & constant_inputs = {});
    /** Sets that require a subquery to be create.
      * Only the sets needed to perform actions returned from already executed `append*` or `getActions`.
      * That is, you need to call getSetsWithSubqueries after all calls of `append*` or `getActions`
      *  and create all the returned sets before performing the actions.
      */
    SubqueriesForSets & getSubqueriesForSets() { return subqueries_for_sets; }
    PreparedSets & getPreparedSets() { return prepared_sets; }
    
    const ExpressionAnalyzerData & getAnalyzedData() const { return *this; }