Skip to content

[Bug] Wrong result with TINYINT column with value -1049190528 #36351

@malwaregarry

Description

@malwaregarry

Search before asking

  • I had searched in the issues and found no similar issues.

Version

2.1.4

What's Wrong?

If we insert -1049190528 into a tinyint column, it will be returned in a IS NULL filter, even if it is not null

this returns false:
SELECT ((t1.c0) IS NULL) from t1;

this returns -128:
SELECT t1.c0 FROM t1 WHERE ((t1.c0) IS NULL);

What You Expected?

SELECT t1.c0 FROM t1 WHERE ((t1.c0) IS NULL); does not return non-null rows

How to Reproduce?

DROP DATABASE IF EXISTS doris1;
CREATE DATABASE doris1;
USE doris1;
CREATE TABLE t1(c0 TINYINT) DISTRIBUTED BY RANDOM PROPERTIES ("replication_num" = "1");
INSERT INTO t1 (c0) VALUES (-1049190528);
SELECT ((t1.c0) IS NULL) FROM t1;
SELECT t1.c0 FROM t1 WHERE ((t1.c0) IS NULL);

Anything Else?

No response

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions