[ 
https://issues.apache.org/jira/browse/IGNITE-22148?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Iurii Gerzhedovich updated IGNITE-22148:
----------------------------------------
    Description: 
Simple example to reproduce the issue:
{code:java}
sql("create table tdd(a uuid default gen_random_uuid, b int, primary key (a) 
)"); 
sql("insert into tdd(b) values(22)");{code}
we got
{code:java}
Caused by: org.apache.ignite.internal.binarytuple.BinaryTupleFormatException: 
IGN-CMN-65535 TraceId:5dfdd34c-6722-41ad-85f3-13aa0c483454 Invalid length for a 
tuple element: 36
    at 
org.apache.ignite.internal.binarytuple.BinaryTupleParser.uuidValue(BinaryTupleParser.java:377)
    at 
org.apache.ignite.internal.binarytuple.BinaryTupleReader.uuidValue(BinaryTupleReader.java:305)
    at 
org.apache.ignite.internal.sql.engine.util.Commons.readValue(Commons.java:487)
    at 
org.apache.ignite.internal.sql.engine.exec.SqlOutputBinaryRow.newRow(SqlOutputBinaryRow.java:85)
    at 
org.apache.ignite.internal.sql.engine.exec.TableRowConverterImpl.toBinaryRow(TableRowConverterImpl.java:83)
    at 
org.apache.ignite.internal.sql.engine.exec.UpdatableTableImpl.insert(UpdatableTableImpl.java:187)
    at 
org.apache.ignite.internal.sql.engine.prepare.KeyValueModifyPlan.lambda$execute$1(KeyValueModifyPlan.java:133)
    at 
java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1187)
 {code}


Let's add validation for `create table` at least for defaults

  was:
Simple example to reproduce the issue:
{code:java}
sql("create table tdd(a uuid default gen_random_uuid, b int, primary key (a) 
)"); 
sql("insert into tdd(b) values(22)");{code}
we got
{code:java}
Caused by: org.apache.ignite.internal.binarytuple.BinaryTupleFormatException: 
IGN-CMN-65535 TraceId:5dfdd34c-6722-41ad-85f3-13aa0c483454 Invalid length for a 
tuple element: 36
    at 
org.apache.ignite.internal.binarytuple.BinaryTupleParser.uuidValue(BinaryTupleParser.java:377)
    at 
org.apache.ignite.internal.binarytuple.BinaryTupleReader.uuidValue(BinaryTupleReader.java:305)
    at 
org.apache.ignite.internal.sql.engine.util.Commons.readValue(Commons.java:487)
    at 
org.apache.ignite.internal.sql.engine.exec.SqlOutputBinaryRow.newRow(SqlOutputBinaryRow.java:85)
    at 
org.apache.ignite.internal.sql.engine.exec.TableRowConverterImpl.toBinaryRow(TableRowConverterImpl.java:83)
    at 
org.apache.ignite.internal.sql.engine.exec.UpdatableTableImpl.insert(UpdatableTableImpl.java:187)
    at 
org.apache.ignite.internal.sql.engine.prepare.KeyValueModifyPlan.lambda$execute$1(KeyValueModifyPlan.java:133)
    at 
java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1187)
 {code}


> BinaryTupleFormatException for UUID
> -----------------------------------
>
>                 Key: IGNITE-22148
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22148
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Iurii Gerzhedovich
>            Priority: Major
>              Labels: ignite-3
>
> Simple example to reproduce the issue:
> {code:java}
> sql("create table tdd(a uuid default gen_random_uuid, b int, primary key (a) 
> )"); 
> sql("insert into tdd(b) values(22)");{code}
> we got
> {code:java}
> Caused by: org.apache.ignite.internal.binarytuple.BinaryTupleFormatException: 
> IGN-CMN-65535 TraceId:5dfdd34c-6722-41ad-85f3-13aa0c483454 Invalid length for 
> a tuple element: 36
>     at 
> org.apache.ignite.internal.binarytuple.BinaryTupleParser.uuidValue(BinaryTupleParser.java:377)
>     at 
> org.apache.ignite.internal.binarytuple.BinaryTupleReader.uuidValue(BinaryTupleReader.java:305)
>     at 
> org.apache.ignite.internal.sql.engine.util.Commons.readValue(Commons.java:487)
>     at 
> org.apache.ignite.internal.sql.engine.exec.SqlOutputBinaryRow.newRow(SqlOutputBinaryRow.java:85)
>     at 
> org.apache.ignite.internal.sql.engine.exec.TableRowConverterImpl.toBinaryRow(TableRowConverterImpl.java:83)
>     at 
> org.apache.ignite.internal.sql.engine.exec.UpdatableTableImpl.insert(UpdatableTableImpl.java:187)
>     at 
> org.apache.ignite.internal.sql.engine.prepare.KeyValueModifyPlan.lambda$execute$1(KeyValueModifyPlan.java:133)
>     at 
> java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1187)
>  {code}
> Let's add validation for `create table` at least for defaults



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to