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

Maksim Zhuravkov updated IGNITE-27730:
--------------------------------------
    Description: 
It is not possible to read a row from a table after adding a NOT NULL column to 
that table.

{noformat}
import org.apache.ignite.client.IgniteClient;
import org.apache.ignite.sql.IgniteSql;

public class Repoducer {
    public static void main(String[] args) {
        try (var client = IgniteClient.builder()
                .addresses("localhost:10801")
                .build()
        ) {
            IgniteSql sql = client.sql();

            try (var rs = sql.execute(null, "DROP TABLE IF EXISTS kv")) {
                System.err.println(rs.affectedRows());
            }
            
            try (var rs = sql.execute(null, "CREATE TABLE kv (key INT, val INT, 
PRIMARY KEY (key) )")) {
                System.err.println(rs.affectedRows());
            }
            
            // Insert
            try (var rs = sql.execute(null, "INSERT INTO kv VALUES(1, 1)")) {
                System.err.println(rs.affectedRows());
            }
            
            // Select
            try (var rs = sql.execute(null, "SELECT * FROM kv")) {
                while (rs.hasNext()) {
                    System.err.println(rs.next());
                }
            }
            
            // Add not null column
            try (var rs = sql.execute(null, "ALTER TABLE kv ADD COLUMN ts 
TIMESTAMP NOT NULL")) {
                System.err.println(rs.affectedRows());
            }

            // What's there?
            try (var rs = sql.execute(null, "SELECT * FROM kv")) {
                while (rs.hasNext()) {
                    System.err.println(rs.next());
                }
            }
        }
    }
}
{noformat}


> Sql. NULL value for non-nullable column in binary tuple builder.
> ----------------------------------------------------------------
>
>                 Key: IGNITE-27730
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27730
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql ai3
>    Affects Versions: 3.1
>            Reporter: Maksim Zhuravkov
>            Priority: Major
>              Labels: ignite-3
>
> It is not possible to read a row from a table after adding a NOT NULL column 
> to that table.
> {noformat}
> import org.apache.ignite.client.IgniteClient;
> import org.apache.ignite.sql.IgniteSql;
> public class Repoducer {
>     public static void main(String[] args) {
>         try (var client = IgniteClient.builder()
>                 .addresses("localhost:10801")
>                 .build()
>         ) {
>             IgniteSql sql = client.sql();
>             try (var rs = sql.execute(null, "DROP TABLE IF EXISTS kv")) {
>                 System.err.println(rs.affectedRows());
>             }
>             
>             try (var rs = sql.execute(null, "CREATE TABLE kv (key INT, val 
> INT, PRIMARY KEY (key) )")) {
>                 System.err.println(rs.affectedRows());
>             }
>             
>             // Insert
>             try (var rs = sql.execute(null, "INSERT INTO kv VALUES(1, 1)")) {
>                 System.err.println(rs.affectedRows());
>             }
>             
>             // Select
>             try (var rs = sql.execute(null, "SELECT * FROM kv")) {
>                 while (rs.hasNext()) {
>                     System.err.println(rs.next());
>                 }
>             }
>             
>             // Add not null column
>             try (var rs = sql.execute(null, "ALTER TABLE kv ADD COLUMN ts 
> TIMESTAMP NOT NULL")) {
>                 System.err.println(rs.affectedRows());
>             }
>             // What's there?
>             try (var rs = sql.execute(null, "SELECT * FROM kv")) {
>                 while (rs.hasNext()) {
>                     System.err.println(rs.next());
>                 }
>             }
>         }
>     }
> }
> {noformat}



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

Reply via email to