20.10.1
```
cat x.sql

drop table if exists enum_test;

create table enum_test(timestamp DateTime, host String, e Enum8('IU' = 1, 'WS' = 2))
Engine = MergeTree PARTITION BY toDate(timestamp) ORDER BY (timestamp, host);

insert into enum_test select '2020-10-09 00:00:00', 'h1', 'WS' from numbers(1000);
alter table enum_test modify column e Enum8('IU' = 1, 'WS' = 2, 'PS' = 3);
insert into enum_test select  '2020-10-09 00:00:00', 'h1', 'PS' from numbers(10);

SELECT * FROM enum_test ORDER BY timestamp DESC LIMIT 1;

Received exception from server (version 20.10.1):
Code: 49. DB::Exception: Received from localhost:9000. DB::Exception: Block structure mismatch in Pipe::unitePipes stream: different types:
timestamp DateTime UInt32(size = 0), host String String(size = 0), e Enum8('IU' = 1, 'WS' = 2, 'PS' = 3) Int8(size = 0)
timestamp DateTime UInt32(size = 0), host String String(size = 0), e Enum8('IU' = 1, 'WS' = 2) Int8(size = 0).


optimize table enum_test final;
SELECT timestamp, host FROM enum_test ORDER BY timestamp DESC LIMIT 1;
┌───────────timestamp─┬─host─┐
│ 2020-10-09 00:00:00 │ h1   │
└─────────────────────┴──────┘
```
const MergeTreeData & storage_,
    const StorageMetadataPtr & metadata_snapshot_,
    const MergeTreeData::DataPartPtr & owned_data_part_,
    UInt64 max_block_size_rows_,
    size_t preferred_block_size_bytes_,
    size_t preferred_max_column_in_block_size_bytes_,
    Names required_columns_,
    MarkRanges mark_ranges_,
    bool use_uncompressed_cache_,
    const PrewhereInfoPtr & prewhere_info_,
    bool check_columns,
    const MergeTreeReaderSettings & reader_settings_,
    const Names & virt_column_names_,
    size_t part_index_in_query_,
    bool quiet)
    :
    MergeTreeBaseSelectProcessor{
        replaceTypes(metadata_snapshot_->getSampleBlockForColumns(required_columns_, storage_.getVirtuals(), storage_.getStorageID()), owned_data_part_),
        storage_, metadata_snapshot_, prewhere_info_, max_block_size_rows_,
        preferred_block_size_bytes_, preferred_max_column_in_block_size_bytes_,
        reader_settings_, use_uncompressed_cache_, virt_column_names_},
    required_columns{std::move(required_columns_)},
    data_part{owned_data_part_},