Nikolay Izhikov created IGNITE-26803:
----------------------------------------
Summary: Cache dump check fail on other node
Key: IGNITE-26803
URL: https://issues.apache.org/jira/browse/IGNITE-26803
Project: Ignite
Issue Type: Bug
Reporter: Nikolay Izhikov
Check procedure faile when dump checked on other node.
{noformat}
Suppressed: org.apache.ignite.IgniteException: No value present
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.SnapshotPartitionsVerifyHandler.calculateDumpedPartitionHash(SnapshotPartitionsVerifyHandler.java:425)
~[classes/:?]
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.SnapshotPartitionsVerifyHandler.lambda$checkDumpFiles$46d12930$1(SnapshotPartitionsVerifyHandler.java:371)
~[classes/:?]
at
org.apache.ignite.internal.util.IgniteUtils.lambda$doInParallel$3(IgniteUtils.java:7392)
~[classes/:?]
at
java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264)
~[?:?]
at
java.base/java.util.concurrent.FutureTask.run(FutureTask.java) ~[?:?]
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) [?:?]
Caused by: java.util.NoSuchElementException: No value present
at java.base/java.util.Optional.orElseThrow(Optional.java:382)
~[?:?]
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.dump.Dump.sft(Dump.java:301)
~[classes/:?]
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.dump.Dump.dumpFile(Dump.java:284)
~[classes/:?]
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.dump.Dump.iterator(Dump.java:207)
~[classes/:?]
at
org.apache.ignite.internal.processors.cache.persistence.snapshot.SnapshotPartitionsVerifyHandler.calculateDumpedPartitionHash(SnapshotPartitionsVerifyHandler.java:400)
~[classes/:?]
... 7 more
{noformat}
Reproducer:
{noformat}
/** */
@Test
public void testCheckDumpFromOtherNode() throws Exception {
IgniteEx ign = startGrid(1);
CacheConfiguration<Object, Object> ccfg = defaultCacheConfiguration();
ign.createCache(ccfg);
for (int i = 0; i < KEYS_CNT; ++i)
ign.cache(DEFAULT_CACHE_NAME).put(i, USER_FACTORY.apply(i));
ign.snapshot().createDump(DMP_NAME, null).get(getTestTimeout());
stopGrid(1);
cleanPersistenceDir(true);
ign = startGrid(2);
SnapshotPartitionsVerifyTaskResult res =
ign.context().cache().context().snapshotMgr().checkSnapshot(DMP_NAME,
null).get(getTestTimeout());
assertTrue(F.isEmpty(res.exceptions()));
}
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)