You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Igor (Jira)" <ji...@apache.org> on 2024/02/20 15:32:00 UTC
[jira] [Created] (IGNITE-21577) JDBC throws exception when multiple endpoints are used
Igor created IGNITE-21577:
-----------------------------
Summary: JDBC throws exception when multiple endpoints are used
Key: IGNITE-21577
URL: https://issues.apache.org/jira/browse/IGNITE-21577
Project: Ignite
Issue Type: Improvement
Components: jdbc
Affects Versions: 3.0.0-beta1
Reporter: Igor
*Steps to reproduce:*
1. Start cluster of 2 nodes.
2. Execute the code:
{code:java}
try (Connection connection = DriverManager.getConnection("jdbc:ignite:thin://localhost:10800,localhost:10801");
Statement statement = connection.createStatement()) {
statement.executeUpdate("CREATE TABLE Person (id INT PRIMARY KEY, name VARCHAR)");
statement.executeUpdate("INSERT INTO Person (id, name) VALUES (1, 'John')");
} {code}
*Expected:*
The code is executed.
*Actual:*
The error is thrown on last insert statement.
{code:java}
java.sql.SQLException: java.util.concurrent.ExecutionException: org.apache.ignite.lang.IgniteException: IGN-CMN-65535 TraceId:bcc4730a-471d-4f66-b637-fb083e1f88a2 Failed to find resource with id: 1
at org.apache.ignite.internal.jdbc.JdbcStatement.toSqlException(JdbcStatement.java:781)
at org.apache.ignite.internal.jdbc.JdbcStatement.execute0(JdbcStatement.java:148)
at org.apache.ignite.internal.jdbc.JdbcStatement.executeUpdate(JdbcStatement.java:181)
at org.gridgain.ai3tests.tests.ConnectionTest.testSaveAndGetFromCache(ConnectionTest.java:47)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
Caused by: java.util.concurrent.ExecutionException: org.apache.ignite.lang.IgniteException: IGN-CMN-65535 TraceId:bcc4730a-471d-4f66-b637-fb083e1f88a2 Failed to find resource with id: 1
at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395)
at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1999)
at org.apache.ignite.internal.jdbc.JdbcStatement.execute0(JdbcStatement.java:144)
... 5 more
Caused by: org.apache.ignite.lang.IgniteException: IGN-CMN-65535 TraceId:bcc4730a-471d-4f66-b637-fb083e1f88a2 Failed to find resource with id: 1
at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
at org.apache.ignite.internal.util.ExceptionUtils$1.copy(ExceptionUtils.java:765)
at org.apache.ignite.internal.util.ExceptionUtils$ExceptionFactory.createCopy(ExceptionUtils.java:699)
at org.apache.ignite.internal.util.ExceptionUtils.copyExceptionWithCause(ExceptionUtils.java:525)
at org.apache.ignite.internal.client.TcpClientChannel.readError(TcpClientChannel.java:508)
at org.apache.ignite.internal.client.TcpClientChannel.processNextMessage(TcpClientChannel.java:397)
at org.apache.ignite.internal.client.TcpClientChannel.lambda$onMessage$3(TcpClientChannel.java:238)
at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177) {code}
*Comments:*
The multiple hosts for JDBC is supported according to documentation:
[https://ignite.apache.org/docs/3.0.0-beta/sql/jdbc-driver]
Also the code works fine if Java API is used.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)