[ https://issues.apache.org/jira/browse/IGNITE-18492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Evgeny Stanilovsky reassigned IGNITE-18492: ------------------------------------------- Assignee: Evgeny Stanilovsky > SQL: Inconsistent behavior of LENGTH limit for CHAR data type > ------------------------------------------------------------- > > Key: IGNITE-18492 > URL: https://issues.apache.org/jira/browse/IGNITE-18492 > Project: Ignite > Issue Type: Bug > Components: sql > Affects Versions: 3.0.0-beta1 > Reporter: Andrey Khitrin > Assignee: Evgeny Stanilovsky > Priority: Major > Labels: ignite-3, sql > > When I create a table with {{CHAR(length)}} column, it's still possible to > insert character values with length greater than given limit. > {code:sql} > sql-cli> create table xx (pk int primary key, f1 char(5)); > Updated 0 rows. > sql-cli> insert into xx values (1, 'abcdefgh'); > Updated 1 rows. > sql-cli> select * from xx; > ╔════╤══════════╗ > ║ PK │ F1 ║ > ╠════╪══════════╣ > ║ 1 │ abcdefgh ║ > ╚════╧══════════╝ > {code} > In other hand, length limit is applied when I insert non-char value that's > casted into {{CHAR}} implicitly. With the same table as above: > {code:sql} > sql-cli> insert into xx values (2, 1234567); > Updated 1 rows. > sql-cli> select * from xx; > ╔════╤══════════╗ > ║ PK │ F1 ║ > ╠════╪══════════╣ > ║ 2 │ 12345 ║ > ╟────┼──────────╢ > ║ 1 │ abcdefgh ║ > ╚════╧══════════╝ > {code} > Behavior should be consistent: ether strip both values down to the given > length limit, or deny to insert too long values in both cases (like it's done > in other DBs, like postgresql). -- This message was sent by Atlassian Jira (v8.20.10#820010)