Shay Zambrovski
Shay Zambrovski

Reputation: 656

MariaDB columnstore table join innodb table

I know that this kind of join is supported, but it doesn't work for me for the next case;

Given the tables:

CREATE TABLE person_cs(
    firstName VARCHAR(255),
    lastName VARCHAR(255),
    address TEXT,
    age INT,
    stateId INT
) ENGINE=ColumnStore;

CREATE TABLE person_inno(
    firstName VARCHAR(255),
    lastName VARCHAR(255),
    address TEXT,
    age INT,
    stateId INT
) engine=InnoDB;

CREATE TABLE states (
    id INT NOT NULL,
    state TEXT NOT NULL
) ENGINE = InnoDB;

person_cs and person_inno are the same entries table (12M) but different engine.

states is lookup innodb table with 50 entries;

So the query select count(*), state from person_inno p join states s on p.stateId = s.id where p.age > 31 group by s.state; works greate (although it take more then 5 minutes with indexed columns)

once I try select count(*), state from person_cs p join states s on p.stateId = s.id where p.age > 31 group by s.state; it fails with the error:

ERROR 1815 (HY000): Internal error: MCS-2058: Unknown Error

Any idea why?

I worked with MariaDB columnstore as docker with latest version.

Upvotes: 1

Views: 218

Answers (1)

danblack
danblack

Reputation: 14736

Please report as a bug, MCOL project. Even if its intended for some reason a better message is needed.

2058 in ColumnStore code seems to indicate: 2058 ERR_DISKAGG_OVERFLOW1 The hash function used produces a lot of hash collisions (1).

Upvotes: 0

Related Questions