22.2.1.4422.

```
create table test_alias (K Int64, D Date, S String, B Int64 Alias length(S)) Engine=MergeTree order by K;
insert into test_alias select number, today(), 'sdfsdfsdfsdfsdfds' from numbers(10000000);

session1: 
clickhouse-benchmark -c 10 <<< "insert into test_alias select number, today(), 'sdfsdfsdfsdfsdfds' from numbers(10000)"

session2: 
alter table test_alias drop column B;
0 rows in set. Elapsed: 251.043 sec.
```

especially it can be a problem with S3 disks

Alias columns do not persist in parts even in columns.txt
constraints.cend(),
                [this](const ASTPtr & constraint_ast)
                {
                    return constraint_ast->as<ASTConstraintDeclaration &>().name == constraint_name;
                }))
        {
            if (if_not_exists)
                return;
            throw Exception("Cannot add constraint " + constraint_name + ": constraint with this name already exists",
                        ErrorCodes::ILLEGAL_COLUMN);
        }
        auto insert_it = constraints.end();
        constraints.emplace(insert_it, constraint_decl);
        metadata.constraints = ConstraintsDescription(constraints);
    }
    else if (type == DROP_CONSTRAINT)
    {
        auto constraints = metadata.constraints.getConstraints();
        auto erase_it = std::find_if(
                constraints.begin(),
                constraints.end(),
                [this](const ASTPtr & constraint_ast)
                {
                    return constraint_ast->as<ASTConstraintDeclaration &>().name == constraint_name;
                });
        if (erase_it == constraints.end())
        {
            if (if_exists)
                return;
            throw Exception("Wrong constraint name. Cannot find constraint `" + constraint_name + "` to drop.",