Skip to content

There is no supertype when filtering by an Enum which is included in primary key #17989

@SaltTan

Description

@SaltTan

If a MergeTree table sorted by an Enum column, filters on this column do not work.
Everything was good in 20.11.4.
Broken in 20.11.5.

CREATE TABLE enum
ENGINE = MergeTree()
ORDER BY enum AS
SELECT cast(1, 'Enum8(\'zero\'=0, \'one\'=1)') AS enum

Ok.

0 rows in set. Elapsed: 0.005 sec.

SELECT * FROM enum

┌─enum─┐
│ one  │
└──────┘

1 rows in set. Elapsed: 0.001 sec.

SELECT * FROM enum WHERE enum = 0

Received exception from server (version 20.11.5):
Code: 386. DB::Exception: Received from localhost:9000. DB::Exception: There is no supertype for types Enum8('zero' = 0, 'one' = 1), UInt8 because some of them are numbers and some of them are not.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugConfirmed user-visible misbehaviour in official releasemajor

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions