zstan commented on a change in pull request #8906:
URL: https://github.com/apache/ignite/pull/8906#discussion_r598127471



##########
File path: 
modules/calcite/src/test/java/org/apache/ignite/internal/processors/query/calcite/CalciteQueryProcessorTest.java
##########
@@ -849,6 +851,109 @@ public void 
testTableDistributionKeysForComplexKeyObject() {
         assertEquals(ImmutableIntList.of(3), 
tblMap.get("MY_TBL_2").descriptor().distribution().getKeys());
     }
 
+    /**
+     * Verifies that table modification events are passed to a calcite schema 
modification listener.
+     */
+    @Test
+    public void testIgniteSchemaAwaresAlterTableCommand() {
+        String selectAllQry = "select * from test_tbl";
+
+        execute(client, "drop table if exists test_tbl");
+        execute(client, "create table test_tbl(id int primary key, val 
varchar)");
+
+        CalciteQueryProcessor qryProc = 
Commons.lookupComponent(client.context(), CalciteQueryProcessor.class);
+
+        {
+            List<String> names = deriveColumnNamesFromCursor(
+                qryProc.query(null, "PUBLIC", selectAllQry).get(0)
+            );
+
+            assertThat(names, equalTo(F.asList("ID", "VAL")));
+        }
+
+        {
+            execute(client, "alter table test_tbl add column new_col int");
+
+            List<String> names = deriveColumnNamesFromCursor(
+                qryProc.query(null, "PUBLIC", selectAllQry).get(0)
+            );
+
+            assertThat(names, equalTo(F.asList("ID", "VAL", "NEW_COL")));
+        }
+
+        {
+            try {
+                execute(client, "alter table test_tbl add column new_col int");

Review comment:
       may be it would be useful to append
   fail(); into new line ? thus Exception throwing will be checked.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to