[
https://issues.apache.org/jira/browse/IGNITE-22003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tiago Marques Godinho updated IGNITE-22003:
-------------------------------------------
Description:
The JRaft Group Replicator should be stopped when the cluster initialization is
canceled.
My understanding is that this resource is created during the initialization
process, and therefore, should be closed properly if it fails. Moreover, it
seems that it also keeps references to other resources created in the same
context (like the LogManager), preventing them from being properly cleaned.
Here is a stacktrace of the replicator routine running after the init is
canceled:
{code:java}
getEntry:387, RocksDbSharedLogStorage
(org.apache.ignite.internal.raft.storage.impl)
getTermFromLogStorage:838, LogManagerImpl
(org.apache.ignite.raft.jraft.storage.impl)
getTerm:834, LogManagerImpl (org.apache.ignite.raft.jraft.storage.impl)
fillCommonFields:1550, Replicator (org.apache.ignite.raft.jraft.core)
sendEmptyEntries:749, Replicator (org.apache.ignite.raft.jraft.core)
sendEmptyEntries:735, Replicator (org.apache.ignite.raft.jraft.core)
sendHeartbeat:1748, Replicator (org.apache.ignite.raft.jraft.core)
lambda$onError$8:1065, Replicator (org.apache.ignite.raft.jraft.core)
call:515, Executors$RunnableAdapter (java.util.concurrent)
run:264, FutureTask (java.util.concurrent)
runWorker:1128, ThreadPoolExecutor (java.util.concurrent)
run:628, ThreadPoolExecutor$Worker (java.util.concurrent)
run:829, Thread (java.lang){code}
was:
The JRaft Group Replicator should be stopped when the cluster initialization is
canceled.
My understanding is that this resource is created during the initialization
process, and therefore, should be closed properly if it fails. Moreover, it
seems that it also keeps references to other resources created in the same
context (like the LogManager), preventing them from being properly cleaned.
> JRaft Replicator is not stopped when cluster init is canceled
> -------------------------------------------------------------
>
> Key: IGNITE-22003
> URL: https://issues.apache.org/jira/browse/IGNITE-22003
> Project: Ignite
> Issue Type: Bug
> Reporter: Tiago Marques Godinho
> Priority: Major
> Labels: ignite-3
>
> The JRaft Group Replicator should be stopped when the cluster initialization
> is canceled.
> My understanding is that this resource is created during the initialization
> process, and therefore, should be closed properly if it fails. Moreover, it
> seems that it also keeps references to other resources created in the same
> context (like the LogManager), preventing them from being properly cleaned.
> Here is a stacktrace of the replicator routine running after the init is
> canceled:
> {code:java}
> getEntry:387, RocksDbSharedLogStorage
> (org.apache.ignite.internal.raft.storage.impl)
> getTermFromLogStorage:838, LogManagerImpl
> (org.apache.ignite.raft.jraft.storage.impl)
> getTerm:834, LogManagerImpl (org.apache.ignite.raft.jraft.storage.impl)
> fillCommonFields:1550, Replicator (org.apache.ignite.raft.jraft.core)
> sendEmptyEntries:749, Replicator (org.apache.ignite.raft.jraft.core)
> sendEmptyEntries:735, Replicator (org.apache.ignite.raft.jraft.core)
> sendHeartbeat:1748, Replicator (org.apache.ignite.raft.jraft.core)
> lambda$onError$8:1065, Replicator (org.apache.ignite.raft.jraft.core)
> call:515, Executors$RunnableAdapter (java.util.concurrent)
> run:264, FutureTask (java.util.concurrent)
> runWorker:1128, ThreadPoolExecutor (java.util.concurrent)
> run:628, ThreadPoolExecutor$Worker (java.util.concurrent)
> run:829, Thread (java.lang){code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)