[
https://issues.apache.org/jira/browse/IGNITE-24658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Iurii Gerzhedovich updated IGNITE-24658:
----------------------------------------
Component/s: sql
> NPE ReadWriteTransactionImpl#enlist on primary replica
> ------------------------------------------------------
>
> Key: IGNITE-24658
> URL: https://issues.apache.org/jira/browse/IGNITE-24658
> Project: Ignite
> Issue Type: Bug
> Components: sql
> Reporter: Kirill Tkalenko
> Priority: Major
> Labels: ignite-3
>
> When running a scenario with multiple nodes and periodic node restarts, I
> found an error in the logs. It occurs because the primary replica disappears
> from the physical topology.
> {noformat}
> 2025-02-27 11:09:28:884 +0000
> [INFO][%poc-tester-SERVER-192.168.208.141-id-0%sql-execution-pool-0][JdbcQueryEventHandlerImpl]
> Exception while executing query.
> java.lang.NullPointerException
> at
> org.apache.ignite.internal.tx.impl.ReadWriteTransactionImpl.lambda$enlist$0(ReadWriteTransactionImpl.java:122)
> at
> java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1705)
> at
> org.apache.ignite.internal.tx.impl.ReadWriteTransactionImpl.enlist(ReadWriteTransactionImpl.java:120)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager$1.enlist(ExecutionServiceImpl.java:1157)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager$1.enlist(ExecutionServiceImpl.java:1172)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager$1.visit(ExecutionServiceImpl.java:1137)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager$1.visit(ExecutionServiceImpl.java:1120)
> at
> org.apache.ignite.internal.sql.engine.rel.IgniteTableModify.accept(IgniteTableModify.java:146)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.visit(IgniteRelShuttle.java:257)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.visitChild(IgniteRelShuttle.java:277)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.processNode(IgniteRelShuttle.java:267)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.visit(IgniteRelShuttle.java:65)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.visit(IgniteRelShuttle.java:61)
> at
> org.apache.ignite.internal.sql.engine.rel.IgniteSender.accept(IgniteSender.java:108)
> at
> org.apache.ignite.internal.sql.engine.prepare.IgniteRelShuttle.visit(IgniteRelShuttle.java:257)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager.enlistPartitions(ExecutionServiceImpl.java:1174)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager.sendFragments(ExecutionServiceImpl.java:1013)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager.lambda$execute$8(ExecutionServiceImpl.java:996)
> at
> java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072)
> at
> java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478)
> at
> org.apache.ignite.internal.sql.engine.exec.QueryTaskExecutorImpl.lambda$execute$0(QueryTaskExecutorImpl.java:86)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:829)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)