This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-19497
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-19497 by this push:
     new 6ecd6df452 wip.
6ecd6df452 is described below

commit 6ecd6df4521e9ed99f743594da9f877994c60f5d
Author: amashenkov <[email protected]>
AuthorDate: Wed Aug 9 04:51:51 2023 +0300

    wip.
---
 .../ignite/internal/sql/engine/SqlQueryProcessor.java    |  5 +++++
 .../sql/engine/exec/ExecutableTableRegistryImpl.java     | 12 ++++++------
 .../sql/engine/exec/ExecutableTableRegistrySelfTest.java |  2 +-
 .../engine/exec/ExecutionDependencyResolverSelfTest.java | 16 ++++++++--------
 4 files changed, 20 insertions(+), 15 deletions(-)

diff --git 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/SqlQueryProcessor.java
 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/SqlQueryProcessor.java
index 0cc8f5fa86..04971f2cf6 100644
--- 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/SqlQueryProcessor.java
+++ 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/SqlQueryProcessor.java
@@ -71,6 +71,7 @@ import 
org.apache.ignite.internal.sql.engine.prepare.PrepareServiceImpl;
 import org.apache.ignite.internal.sql.engine.property.PropertiesHelper;
 import org.apache.ignite.internal.sql.engine.property.PropertiesHolder;
 import org.apache.ignite.internal.sql.engine.schema.CatalogSqlSchemaManager;
+import org.apache.ignite.internal.sql.engine.schema.IgniteSchema;
 import org.apache.ignite.internal.sql.engine.schema.SqlSchemaManager;
 import org.apache.ignite.internal.sql.engine.session.Session;
 import org.apache.ignite.internal.sql.engine.session.SessionId;
@@ -420,6 +421,10 @@ public class SqlQueryProcessor implements QueryProcessor {
 
                     SchemaPlus schema = sqlSchemaManager.schema(schemaName, 
txTimestamp.longValue());
 
+                    int version = schema.unwrap(IgniteSchema.class).version();
+
+                    System.out.println(format("Query: {}\nschema={}", sql, 
version));
+
                     if (schema == null) {
                         return CompletableFuture.failedFuture(new 
SchemaNotFoundException(schemaName));
                     }
diff --git 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistryImpl.java
 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistryImpl.java
index 087a602972..9c6c1688b1 100644
--- 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistryImpl.java
+++ 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistryImpl.java
@@ -78,6 +78,12 @@ public class ExecutableTableRegistryImpl implements 
ExecutableTableRegistry, Sch
         return tableCache.computeIfAbsent(new CacheKey(schemaVersion, 
tableId), (k) -> loadTable(tableName, tableDescriptor));
     }
 
+    /** {@inheritDoc} */
+    @Override
+    public void onSchemaUpdated() {
+        tableCache.clear();
+    }
+
     private CompletableFuture<ExecutableTable> loadTable(String tableName, 
TableDescriptor tableDescriptor) {
         return tableManager.tableAsyncInternal(tableName.toUpperCase())
                 .thenApply(table -> {
@@ -94,12 +100,6 @@ public class ExecutableTableRegistryImpl implements 
ExecutableTableRegistry, Sch
                 });
     }
 
-    /** {@inheritDoc} */
-    @Override
-    public void onSchemaUpdated() {
-        tableCache.clear();
-    }
-
     private CompletableFuture<ExecutableTable> loadTable(int tableId, 
TableDescriptor tableDescriptor) {
         CompletableFuture<Map.Entry<InternalTable, SchemaRegistry>> f = 
tableManager.tableAsync(tableId)
                 .thenApply(table -> {
diff --git 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistrySelfTest.java
 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistrySelfTest.java
index c98ee0c454..740a1cba71 100644
--- 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistrySelfTest.java
+++ 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutableTableRegistrySelfTest.java
@@ -150,7 +150,7 @@ public class ExecutableTableRegistrySelfTest {
             
when(schemaManager.schemaRegistry(tableId)).thenReturn(schemaRegistry);
             when(schemaRegistry.schema()).thenReturn(schemaDescriptor);
 
-            return registry.getTable(tableId, descriptor);
+            return registry.getTable(schemaVersion, tableId, descriptor);
         }
     }
 }
diff --git 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutionDependencyResolverSelfTest.java
 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutionDependencyResolverSelfTest.java
index 4a71794860..cc5a2e4d7a 100644
--- 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutionDependencyResolverSelfTest.java
+++ 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/ExecutionDependencyResolverSelfTest.java
@@ -103,8 +103,8 @@ public class ExecutionDependencyResolverSelfTest extends 
AbstractPlannerTest {
         tester.checkDependencies(deps, t1Id);
         tester.checkDependencies(deps, t2Id);
 
-        verify(registry, times(1)).getTable(eq(t1Id), anyString(), same(td1));
-        verify(registry, times(1)).getTable(eq(t2Id), anyString(), same(td2));
+        verify(registry, times(1)).getTable(anyInt(), eq(t1Id), anyString(), 
same(td1));
+        verify(registry, times(1)).getTable(anyInt(), eq(t2Id), anyString(), 
same(td2));
     }
 
     /**
@@ -123,7 +123,7 @@ public class ExecutionDependencyResolverSelfTest extends 
AbstractPlannerTest {
         CompletableFuture<ResolvedDependencies> f = 
tester.resolveDependencies("SELECT * FROM test1 WHERE id=1");
         tester.checkDependencies(f.join(), t1Id);
 
-        verify(registry, times(1)).getTable(eq(t1Id), anyString(), same(td1));
+        verify(registry, times(1)).getTable(anyInt(), eq(t1Id), anyString(), 
same(td1));
     }
 
     /**
@@ -151,8 +151,8 @@ public class ExecutionDependencyResolverSelfTest extends 
AbstractPlannerTest {
         tester.checkDependencies(deps, t1Id);
         tester.checkDependencies(deps, t2Id);
 
-        verify(registry, times(1)).getTable(eq(t1Id), anyString(), same(td1));
-        verify(registry, times(1)).getTable(eq(t2Id), anyString(), same(td2));
+        verify(registry, times(1)).getTable(anyInt(), eq(t1Id), anyString(), 
same(td1));
+        verify(registry, times(1)).getTable(anyInt(), eq(t2Id), anyString(), 
same(td2));
     }
 
     /**
@@ -173,7 +173,7 @@ public class ExecutionDependencyResolverSelfTest extends 
AbstractPlannerTest {
         ResolvedDependencies deps = f.join();
         tester.checkDependencies(deps, t1Id);
 
-        verify(registry, times(1)).getTable(anyInt(), anyString(), 
any(TableDescriptor.class));
+        verify(registry, times(1)).getTable(anyInt(), anyInt(), anyString(), 
any(TableDescriptor.class));
     }
 
     /**
@@ -261,14 +261,14 @@ public class ExecutionDependencyResolverSelfTest extends 
AbstractPlannerTest {
 
             CompletableFuture<ExecutableTable> f = 
CompletableFuture.completedFuture(executableTable);
 
-            when(registry.getTable(eq(tableId), anyString(), 
any(TableDescriptor.class))).thenReturn(f);
+            when(registry.getTable(anyInt(), eq(tableId), anyString(), 
any(TableDescriptor.class))).thenReturn(f);
         }
 
         void setError(int tableId, Throwable err) {
             CompletableFuture<ExecutableTable> f = new CompletableFuture<>();
             f.completeExceptionally(err);
 
-            when(registry.getTable(eq(tableId), anyString(), 
any(TableDescriptor.class))).thenReturn(f);
+            when(registry.getTable(anyInt(), eq(tableId), anyString(), 
any(TableDescriptor.class))).thenReturn(f);
         }
 
         void setColocationGroup(int tableId, 
CompletableFuture<ColocationGroup> group) {

Reply via email to