[ https://issues.apache.org/jira/browse/FLINK-35663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17862503#comment-17862503 ]
Ferenc Csaky commented on FLINK-35663: -------------------------------------- h2. 0. Setup * Build Flink on branch {{release-1.20}}: {code:sh} $ mvn clean install -DskipTests -Dfast {code} * Start SQL Client: {code:sh} $ ./build-target/bin/sql-client.sh {code} h2. 1. DDL statements {code:java} Flink SQL> create catalog c1 comment 'comment for ''c1''' with ('type'='generic_in_memory', 'default-database'='db1'); [INFO] Execute statement succeeded. Flink SQL> create catalog if not exists c1 comment 'new' with ('type'='generic_in_memory'); [INFO] Execute statement succeeded. Flink SQL> create catalog if not exists c2 with ('type'='generic_in_memory'); [INFO] Execute statement succeeded. Flink SQL> create catalog c2 with ('type'='generic_in_memory', 'default-database'='db2'); [ERROR] Could not execute SQL statement. Reason: org.apache.flink.table.catalog.exceptions.CatalogException: Catalog c2 already exists. {code} h2. 2. Check saved state via show/describe {code:java} Flink SQL> show create catalog c1; +--------------------------------------------------------------------------------------+ | result | +--------------------------------------------------------------------------------------+ | CREATE CATALOG `c1` COMMENT 'comment for ''c1''' WITH ( 'default-database' = 'db1', 'type' = 'generic_in_memory' ) | +--------------------------------------------------------------------------------------+ 1 row in set Flink SQL> desc catalog c1; +-----------+-------------------+ | info name | info value | +-----------+-------------------+ | name | c1 | | type | generic_in_memory | | comment | comment for 'c1' | +-----------+-------------------+ 3 rows in set Flink SQL> desc catalog extended c1; +-------------------------+-------------------+ | info name | info value | +-------------------------+-------------------+ | name | c1 | | type | generic_in_memory | | comment | comment for 'c1' | | option:default-database | db1 | +-------------------------+-------------------+ 4 rows in set Flink SQL> show create catalog c2; +--------------------------------------------------------------+ | result | +--------------------------------------------------------------+ | CREATE CATALOG `c2` WITH ( 'type' = 'generic_in_memory' ) | +--------------------------------------------------------------+ 1 row in set Flink SQL> desc catalog c2; +-----------+-------------------+ | info name | info value | +-----------+-------------------+ | name | c2 | | type | generic_in_memory | | comment | | +-----------+-------------------+ 3 rows in set Flink SQL> desc catalog extended c2; +-----------+-------------------+ | info name | info value | +-----------+-------------------+ | name | c2 | | type | generic_in_memory | | comment | | +-----------+-------------------+ 3 rows in set {code} h2. 3. Alter statements {code:java} Flink SQL> alter catalog c1 reset ('default-database'); [INFO] Execute statement succeeded. Flink SQL> alter catalog c1 comment ''; [INFO] Execute statement succeeded. Flink SQL> alter catalog c2 set ('default-database'='db2'); [INFO] Execute statement succeeded. Flink SQL> alter catalog c2 reset ('type'); [ERROR] Could not execute SQL statement. Reason: org.apache.flink.table.api.ValidationException: ALTER CATALOG RESET does not support changing 'type' Flink SQL> alter catalog c2 reset (); [ERROR] Could not execute SQL statement. Reason: org.apache.flink.table.api.ValidationException: ALTER CATALOG RESET does not support empty key Flink SQL> alter catalog c2 comment 'hello catalog ''c2'''; [INFO] Execute statement succeeded. {code} h2. 4. Check saved state after altering via show/describe {code:java} Flink SQL> show create catalog c1; +--------------------------------------------------------------+ | result | +--------------------------------------------------------------+ | CREATE CATALOG `c1` WITH ( 'type' = 'generic_in_memory' ) | +--------------------------------------------------------------+ 1 row in set Flink SQL> desc catalog c1; +-----------+-------------------+ | info name | info value | +-----------+-------------------+ | name | c1 | | type | generic_in_memory | | comment | | +-----------+-------------------+ 3 rows in set Flink SQL> desc catalog extended c1; +-----------+-------------------+ | info name | info value | +-----------+-------------------+ | name | c1 | | type | generic_in_memory | | comment | | +-----------+-------------------+ 3 rows in set Flink SQL> show create catalog c2; +--------------------------------------------------------------------------------------+ | result | +--------------------------------------------------------------------------------------+ | CREATE CATALOG `c2` COMMENT 'hello catalog ''c2''' WITH ( 'default-database' = 'db2', 'type' = 'generic_in_memory' ) | +--------------------------------------------------------------------------------------+ 1 row in set Flink SQL> desc catalog c2; +-----------+--------------------+ | info name | info value | +-----------+--------------------+ | name | c2 | | type | generic_in_memory | | comment | hello catalog 'c2' | +-----------+--------------------+ 3 rows in set Flink SQL> desc catalog extended c2; +-------------------------+--------------------+ | info name | info value | +-------------------------+--------------------+ | name | c2 | | type | generic_in_memory | | comment | hello catalog 'c2' | | option:default-database | db2 | +-------------------------+--------------------+ 4 rows in set {code} h2. 5. Results All of the executed statements gave back the expected result, the feature LGTM. > Release Testing: FLIP-436: Introduce Catalog-related Syntax > ----------------------------------------------------------- > > Key: FLINK-35663 > URL: https://issues.apache.org/jira/browse/FLINK-35663 > Project: Flink > Issue Type: Sub-task > Components: Table SQL / API > Affects Versions: 1.20.0 > Reporter: Yubin Li > Assignee: Ferenc Csaky > Priority: Blocker > Attachments: image-2024-06-21-09-43-47-391.png, > image-2024-06-21-09-43-58-460.png, image-2024-06-21-09-44-26-213.png, > image-2024-06-21-09-45-43-807.png > > > This describes how to verify FLINK-34914 FLIP-436: Introduce Catalog-related > Syntax. > The verification steps are as follows. > h3. 1. Start the sql client. > bin/sql-client.sh > h3. 2. Execute the following DDL statements. > {code:java} > create catalog c1 comment 'comment for ''c1''' with > ('type'='generic_in_memory', 'default-database'='db1'); > create catalog if not exists c1 comment 'new' with > ('type'='generic_in_memory'); > create catalog if not exists c2 with ('type'='generic_in_memory'); > create catalog c2 with ('type'='generic_in_memory', > 'default-database'='db2'); {code} > Verify whether only the last statement is supposed to throw an exception and > messages such as `Catalog c2 already exists.` > h3. 3. Execute the following statements. > {code:java} > show catalogs; > show create catalog c1; > describe catalog c1; > desc catalog extended c1; > show create catalog c2; > describe catalog c2; > desc catalog extended c2; {code} > Verify whether they are the same as the given results. > !image-2024-06-21-09-45-43-807.png|width=795,height=933! > h3. 4. Execute the following DDL statements. > {code:java} > alter catalog c1 reset ('default-database'); > alter catalog c1 comment ''; > alter catalog c2 set ('default-database'='db2'); > alter catalog c2 reset ('type'); > alter catalog c2 reset (); > alter catalog c2 comment 'hello catalog ''c2''';{code} > Verify whether the forth statement is supposed to throw an exception and > messages such as `ALTER CATALOG RESET does not support changing 'type'`. > Verify whether the fifth statement is supposed to throw an exception and > messages such as `ALTER CATALOG RESET does not support empty key`. > h3. 5. Execute the following statements. > {code:java} > show create catalog c1; > describe catalog c1; > desc catalog extended c1; > show create catalog c2; > describe catalog c2; > desc catalog extended c2; {code} > Verify whether they are the same as the given results. > !image-2024-06-21-09-44-26-213.png|width=792,height=792! -- This message was sent by Atlassian Jira (v8.20.10#820010)