This is an automated email from the ASF dual-hosted git repository.
vpyatkov pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/main by this push:
new b1ffe7785f IGNITE-20687 Exclude IgniteTransactions from SQL session
creation API (#2767)
b1ffe7785f is described below
commit b1ffe7785f430640635db19eb2ddb693d14c8651
Author: Vladislav Pyatkov <[email protected]>
AuthorDate: Tue Oct 31 16:44:27 2023 +0300
IGNITE-20687 Exclude IgniteTransactions from SQL session creation API
(#2767)
---
.../api/src/main/java/org/apache/ignite/sql/Session.java | 16 ----------------
.../handler/requests/sql/ClientSqlExecuteRequest.java | 5 +++--
.../ignite/internal/client/sql/ClientSessionBuilder.java | 11 -----------
.../apache/ignite/client/fakes/FakeSessionBuilder.java | 11 -----------
.../ignite/internal/sql/api/SessionBuilderImpl.java | 15 +++++++++++----
5 files changed, 14 insertions(+), 44 deletions(-)
diff --git a/modules/api/src/main/java/org/apache/ignite/sql/Session.java
b/modules/api/src/main/java/org/apache/ignite/sql/Session.java
index 4c7905649b..0b10281ae3 100644
--- a/modules/api/src/main/java/org/apache/ignite/sql/Session.java
+++ b/modules/api/src/main/java/org/apache/ignite/sql/Session.java
@@ -23,7 +23,6 @@ import java.util.concurrent.TimeUnit;
import org.apache.ignite.sql.async.AsyncResultSet;
import org.apache.ignite.sql.reactive.ReactiveResultSet;
import org.apache.ignite.table.mapper.Mapper;
-import org.apache.ignite.tx.IgniteTransactions;
import org.apache.ignite.tx.Transaction;
import org.jetbrains.annotations.Nullable;
@@ -323,21 +322,6 @@ public interface Session extends AutoCloseable {
* Session builder.
*/
interface SessionBuilder {
- /**
- * Returns ignite transaction.
- *
- * @return Ignite transaction.
- */
- IgniteTransactions igniteTransactions();
-
- /**
- * Sets ignite transactions.
- *
- * @param transactions Ignite transactions.
- * @return {@code this} for chaining.
- */
- SessionBuilder igniteTransactions(IgniteTransactions transactions);
-
/**
* Returns a default query timeout.
*
diff --git
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlExecuteRequest.java
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlExecuteRequest.java
index 0f56bf5c98..79929e98c0 100644
---
a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlExecuteRequest.java
+++
b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/sql/ClientSqlExecuteRequest.java
@@ -36,6 +36,7 @@ import
org.apache.ignite.internal.client.proto.ClientMessageUnpacker;
import org.apache.ignite.internal.hlc.HybridTimestamp;
import org.apache.ignite.internal.lang.IgniteInternalCheckedException;
import org.apache.ignite.internal.lang.IgniteInternalException;
+import org.apache.ignite.internal.sql.api.SessionBuilderImpl;
import org.apache.ignite.internal.tx.impl.IgniteTransactionsImpl;
import org.apache.ignite.internal.util.ArrayUtils;
import org.apache.ignite.sql.ColumnMetadata;
@@ -161,8 +162,8 @@ public class ClientSqlExecuteRequest {
private static Session readSession(ClientMessageUnpacker in, IgniteSql
sql, IgniteTransactions transactions) {
SessionBuilder sessionBuilder = sql.sessionBuilder();
- if (transactions != null) {
- sessionBuilder.igniteTransactions(transactions);
+ if (transactions != null && sessionBuilder instanceof
SessionBuilderImpl) {
+ ((SessionBuilderImpl)
sessionBuilder).igniteTransactions(transactions);
}
if (!in.tryUnpackNil()) {
diff --git
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientSessionBuilder.java
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientSessionBuilder.java
index 1dddcb3e5d..1fdfdcb481 100644
---
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientSessionBuilder.java
+++
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientSessionBuilder.java
@@ -24,7 +24,6 @@ import java.util.concurrent.TimeUnit;
import org.apache.ignite.internal.client.ReliableChannel;
import org.apache.ignite.sql.Session;
import org.apache.ignite.sql.Session.SessionBuilder;
-import org.apache.ignite.tx.IgniteTransactions;
import org.jetbrains.annotations.Nullable;
/**
@@ -58,16 +57,6 @@ public class ClientSessionBuilder implements SessionBuilder {
this.ch = ch;
}
- @Override
- public IgniteTransactions igniteTransactions() {
- throw new UnsupportedOperationException("Should not be used in this
implementation.");
- }
-
- @Override
- public SessionBuilder igniteTransactions(IgniteTransactions transactions) {
- throw new UnsupportedOperationException("Should not be used in this
implementation.");
- }
-
@Override
public long defaultQueryTimeout(TimeUnit timeUnit) {
Objects.requireNonNull(timeUnit);
diff --git
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeSessionBuilder.java
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeSessionBuilder.java
index f0b0a67c4a..9c71662fb1 100644
---
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeSessionBuilder.java
+++
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeSessionBuilder.java
@@ -23,7 +23,6 @@ import java.util.Objects;
import java.util.concurrent.TimeUnit;
import org.apache.ignite.sql.Session;
import org.apache.ignite.sql.Session.SessionBuilder;
-import org.apache.ignite.tx.IgniteTransactions;
import org.jetbrains.annotations.Nullable;
/**
@@ -40,16 +39,6 @@ public class FakeSessionBuilder implements SessionBuilder {
private Integer pageSize;
- @Override
- public IgniteTransactions igniteTransactions() {
- return null;
- }
-
- @Override
- public SessionBuilder igniteTransactions(IgniteTransactions transactions) {
- return this;
- }
-
/** {@inheritDoc} */
@Override
public long defaultQueryTimeout(TimeUnit timeUnit) {
diff --git
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/api/SessionBuilderImpl.java
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/api/SessionBuilderImpl.java
index ec81138b4c..30eeb59250 100644
---
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/api/SessionBuilderImpl.java
+++
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/api/SessionBuilderImpl.java
@@ -66,14 +66,21 @@ public class SessionBuilderImpl implements SessionBuilder {
this.props = props;
}
- /** {@inheritDoc} */
- @Override
+ /**
+ * Gets an Ignite transactions facade.
+ *
+ * @return Ignite transactions.
+ */
public IgniteTransactions igniteTransactions() {
return transactions;
}
- /** {@inheritDoc} */
- @Override
+ /**
+ * Sets an Ignite transactions facade.
+ *
+ * @param transactions Ignite transactions.
+ * @return {@code this} for chaining.
+ */
public SessionBuilder igniteTransactions(IgniteTransactions transactions) {
this.transactions = transactions;