This is an automated email from the ASF dual-hosted git repository.
ptupitsyn pushed a commit to branch ignite-14972
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/ignite-14972 by this push:
new c43074280 wip
c43074280 is described below
commit c430742805eb447d5e056ad47666c10c10fd28ed
Author: Pavel Tupitsyn <[email protected]>
AuthorDate: Mon May 30 15:31:47 2022 +0300
wip
---
.../apache/ignite/client/handler/ClientInboundMessageHandler.java | 8 ++++++++
.../client/handler/requests/sql/ClientSqlCursorCloseRequest.java | 6 +++---
.../handler/requests/sql/ClientSqlCursorNextPageRequest.java | 3 ---
3 files changed, 11 insertions(+), 6 deletions(-)
diff --git
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java
index 4adde3909..c236606b0 100644
---
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java
+++
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java
@@ -38,6 +38,8 @@ import
org.apache.ignite.client.handler.requests.jdbc.ClientJdbcQueryMetadataReq
import
org.apache.ignite.client.handler.requests.jdbc.ClientJdbcSchemasMetadataRequest;
import
org.apache.ignite.client.handler.requests.jdbc.ClientJdbcTableMetadataRequest;
import org.apache.ignite.client.handler.requests.jdbc.JdbcMetadataCatalog;
+import
org.apache.ignite.client.handler.requests.sql.ClientSqlCursorCloseRequest;
+import
org.apache.ignite.client.handler.requests.sql.ClientSqlCursorNextPageRequest;
import org.apache.ignite.client.handler.requests.sql.ClientSqlExecuteRequest;
import org.apache.ignite.client.handler.requests.table.ClientSchemasGetRequest;
import org.apache.ignite.client.handler.requests.table.ClientTableGetRequest;
@@ -440,6 +442,12 @@ public class ClientInboundMessageHandler extends
ChannelInboundHandlerAdapter {
case ClientOp.SQL_EXEC:
return ClientSqlExecuteRequest.process(in, out, sql,
resources);
+ case ClientOp.SQL_CURSOR_NEXT_PAGE:
+ return ClientSqlCursorNextPageRequest.process(in, out,
resources);
+
+ case ClientOp.SQL_CURSOR_CLOSE:
+ return ClientSqlCursorCloseRequest.process(in, resources);
+
default:
throw new IgniteException("Unexpected operation code: " +
opCode);
}
diff --git
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorCloseRequest.java
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorCloseRequest.java
index b473d0843..8ce318c84 100644
---
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorCloseRequest.java
+++
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorCloseRequest.java
@@ -17,6 +17,7 @@
package org.apache.ignite.client.handler.requests.sql;
+import java.util.concurrent.CompletableFuture;
import org.apache.ignite.client.handler.ClientResourceRegistry;
import org.apache.ignite.internal.client.proto.ClientMessageUnpacker;
import org.apache.ignite.lang.IgniteInternalCheckedException;
@@ -32,13 +33,12 @@ public class ClientSqlCursorCloseRequest {
* @param in Unpacker.
* @param resources Resources.
*/
- public static void process(ClientMessageUnpacker in,
ClientResourceRegistry resources)
+ public static CompletableFuture<Void> process(ClientMessageUnpacker in,
ClientResourceRegistry resources)
throws IgniteInternalCheckedException {
long resourceId = in.unpackLong();
AsyncResultSet asyncResultSet =
resources.remove(resourceId).get(AsyncResultSet.class);
- // TODO: Potential blocking? Do we need closeAsync? Check
implementation.
- asyncResultSet.close();
+ return asyncResultSet.closeAsync().toCompletableFuture();
}
}
diff --git
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorNextPageRequest.java
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorNextPageRequest.java
index 34ebca70d..3d04f1b5d 100644
---
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorNextPageRequest.java
+++
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlCursorNextPageRequest.java
@@ -24,7 +24,6 @@ import
org.apache.ignite.client.handler.ClientResourceRegistry;
import org.apache.ignite.internal.client.proto.ClientMessagePacker;
import org.apache.ignite.internal.client.proto.ClientMessageUnpacker;
import org.apache.ignite.lang.IgniteInternalCheckedException;
-import org.apache.ignite.sql.IgniteSql;
import org.apache.ignite.sql.async.AsyncResultSet;
/**
@@ -36,13 +35,11 @@ public class ClientSqlCursorNextPageRequest {
*
* @param in Unpacker.
* @param out Packer.
- * @param sql SQL API.
* @return Future.
*/
public static CompletableFuture<Void> process(
ClientMessageUnpacker in,
ClientMessagePacker out,
- IgniteSql sql,
ClientResourceRegistry resources)
throws IgniteInternalCheckedException {
long resourceId = in.unpackLong();