[ https://issues.apache.org/jira/browse/IGNITE-18001?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vyacheslav Koptilin updated IGNITE-18001: ----------------------------------------- Labels: ignite-3 (was: ) > Ignite node may become unavailable after some play with SQL > ----------------------------------------------------------- > > Key: IGNITE-18001 > URL: https://issues.apache.org/jira/browse/IGNITE-18001 > Project: Ignite > Issue Type: Bug > Affects Versions: 3.0.0-beta1 > Reporter: Andrey Khitrin > Priority: Major > Labels: ignite-3 > Attachments: ignite3db-0.log, ignite3db-1.log > > > Steps to reproduce: > # Start AI3 node, init cluster > # Connect to node via Ignite3 CLI > # Open SQL console in Ignite3 CLI > # Play with SQL queries: create tables, invoke select queries, drop tables, > so on. Probably, this step is not needed. Probably, it may be important to > perform some queries with errors. > # Wait for some time (30-60 mins) having SQL console open. > # Try to execute new query after the pause. It {*}hangs{*}. > In DB log, a lot of the following errors occur (some of them could occur even > before step 6 above): > {code} > 2022-10-27 18:15:57:391 +0400 > [WARNING][%defaultNode%Raft-Group-Client-11][RaftGroupServiceImpl] > Recoverable error duri > ng the request type=ActionRequestImpl occurred (will be retried on the > randomly selected node): > java.util.concurrent.TimeoutException > at > java.base/java.util.concurrent.CompletableFuture$Timeout.run(CompletableFuture.java:2792) > at > java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) > at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) > at > java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecut > or.java:304) > 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) > 2022-10-27 18:17:21:376 +0400 > [INFO][%defaultNode%checkpoint-thread-1][Checkpoint] Skipping checkpoint (no > pages were m > odified) [checkpointBeforeWriteLockTime=0ms, checkpointWriteLockWait=0ms, > checkpointListenersExecuteTime=0ms, checkpoin > tWriteLockHoldTime=0ms, reason='timeout'] > {code} > After attempt to restart node (`./bin/ignite3db.sh stop && ./bin/ignite3db.sh > start`) another stacktrace occurs in log: > {code}2022-10-27 18:24:06:489 +0400 > [INFO][ForkJoinPool.commonPool-worker-9][ClientHandlerModule] Thin client > protocol started successfully[port=10800] > 2022-10-27 18:24:06:490 +0400 > [INFO][ForkJoinPool.commonPool-worker-9][IgniteImpl] Components started, > performing recovery > 2022-10-27 18:24:06:868 +0400 > [INFO][ForkJoinPool.commonPool-worker-9][ConfigurationRegistry] Failed to > notify configuration listener > java.util.NoSuchElementException: > table.tables.ee9c42e0-9b96-4164-b13b-8bec99d3171a.assignments > at > org.apache.ignite.internal.configuration.util.ConfigurationUtil.findEx(ConfigurationUtil.java:852) > at > org.apache.ignite.internal.configuration.ConfigurationChanger.getLatest(ConfigurationChanger.java:439) > at > org.apache.ignite.internal.configuration.direct.DirectPropertyProxy.value(DirectPropertyProxy.java:65) > at > org.apache.ignite.internal.table.distributed.TableManager.updateAssignmentInternal(TableManager.java:652) > at > org.apache.ignite.internal.table.distributed.TableManager.onUpdateAssignments(TableManager.java:616) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyPublicListeners(ConfigurationNotifier.java:492) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$2.visitLeafNode(ConfigurationNotifier.java:374) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$2.visitLeafNode(ConfigurationNotifier.java:370) > at > org.apache.ignite.internal.schema.configuration.TableNode.traverseChildren(Unknown > Source) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyListeners(ConfigurationNotifier.java:370) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$2.visitNamedListNode(ConfigurationNotifier.java:460) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$2.visitNamedListNode(ConfigurationNotifier.java:370) > at > org.apache.ignite.internal.schema.configuration.TablesNode.traverseChildren(Unknown > Source) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyListeners(ConfigurationNotifier.java:370) > at > org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyListeners(ConfigurationNotifier.java:88) > at > org.apache.ignite.internal.configuration.ConfigurationRegistry$2.visitInnerNode(ConfigurationRegistry.java:310) > at > org.apache.ignite.internal.configuration.ConfigurationRegistry$2.visitInnerNode(ConfigurationRegistry.java:292) > at > org.apache.ignite.internal.configuration.SuperRoot.traverseChildren(SuperRoot.java:103) > at > org.apache.ignite.internal.configuration.ConfigurationRegistry.notificator(ConfigurationRegistry.java:292) > at > org.apache.ignite.internal.configuration.ConfigurationChanger.notifyCurrentConfigurationListeners(ConfigurationChanger.java:616) > at > org.apache.ignite.internal.configuration.ConfigurationRegistry.notifyCurrentConfigurationListeners(ConfigurationRegistry.java:355) > at > org.apache.ignite.internal.app.IgniteImpl.notifyConfigurationListeners(IgniteImpl.java:714) > at > org.apache.ignite.internal.app.IgniteImpl.lambda$start$6(IgniteImpl.java:538) > at > java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072) > at > java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506) > at > java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:610) > at > java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:791) > at > java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:479) > 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:183) > 2022-10-27 18:24:06:869 +0400 > [INFO][ForkJoinPool.commonPool-worker-11][IgniteImpl] Checking revision on > recovery [targetRevision=116, appliedRevision=115, acceptableDifference=100] > 2022-10-27 18:24:06:871 +0400 > [INFO][ForkJoinPool.commonPool-worker-11][Cluster] > [default:defaultNode:6c69de62-774d-46db-9278-b7b037011747@127.0.1.1:3344][doShutdown] > Shutting down > 2022-10-27 18:24:06:878 +0400 > [INFO][ForkJoinPool.commonPool-worker-11][Cluster] > [default:defaultNode:6c69de62-774d-46db-9278-b7b037011747@127.0.1.1:3344][leaveCluster] > Leaving cluster > {code} > And node status is show as "unavailable" > {code} > ignite3cli-3.0.0-SNAPSHOT:$ ./bin/ignite3 node status > Node unavailable > Could not connect to node with URL http://localhost:10300 > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)