You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Puchkovskiy (Jira)" <ji...@apache.org> on 2025/04/11 10:12:00 UTC
[jira] [Assigned] (IGNITE-24981) Partition storage is missing on table creation with colocation
[ https://issues.apache.org/jira/browse/IGNITE-24981?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Roman Puchkovskiy reassigned IGNITE-24981:
------------------------------------------
Assignee: Roman Puchkovskiy
> Partition storage is missing on table creation with colocation
> --------------------------------------------------------------
>
> Key: IGNITE-24981
> URL: https://issues.apache.org/jira/browse/IGNITE-24981
> Project: Ignite
> Issue Type: Bug
> Reporter: Roman Puchkovskiy
> Assignee: Roman Puchkovskiy
> Priority: Major
> Labels: ignite-3
>
> From time to time the following test
> class ItBigZoneStopTest extends ClusterPerTestIntegrationTest {
> @Override
> protected int initialNodes() {
> return 2;
> }
> @Test
> void test() {
> Ignite node = cluster.node(0);
> node.sql().executeScript(
> "CREATE ZONE TEST_ZONE WITH STORAGE_PROFILES='default', PARTITIONS=96;"
> + "CREATE TABLE TEST_TABLE(id INT PRIMARY KEY, val VARCHAR(255)) ZONE TEST_ZONE"
> );
> node.sql().execute(null, "SELECT * FROM TEST_TABLE").close();
> }
> }
>
>
> fails with the following:
>
> java.util.concurrent.CompletionException: java.lang.AssertionError: Partition storage is missing [zoneId=18, tableId=19, partitionId=58].
> at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniAcceptNow(CompletableFuture.java:757) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniAcceptStage(CompletableFuture.java:731) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.thenAccept(CompletableFuture.java:2110) ~[?:?]
> at org.apache.ignite.internal.index.IndexBuildController.lambda$onPrimaryReplicaElected$7(IndexBuildController.java:280) ~[main/:?]
> 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.complete(CompletableFuture.java:2075) ~[?:?]
> at org.apache.ignite.internal.util.CompletableFutures.lambda$copyStateTo$2(CompletableFutures.java:160) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.copyState(BaseVersionedValue.java:335) ~[main/:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.complete(BaseVersionedValue.java:219) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.lambda$completeInternal$2(IncrementalVersionedValue.java:283) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.completeInternal(IncrementalVersionedValue.java:283) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue$1.onUpdate(IncrementalVersionedValue.java:112) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.lambda$dependingOn$0(IncrementalVersionedValue.java:83) ~[main/:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.lambda$notifyCompletionListeners$6(BaseVersionedValue.java:367) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.notifyCompletionListeners(BaseVersionedValue.java:362) ~[main/:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.complete(BaseVersionedValue.java:228) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.lambda$completeInternal$2(IncrementalVersionedValue.java:283) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.completeInternal(IncrementalVersionedValue.java:283) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue$1.onUpdate(IncrementalVersionedValue.java:112) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.lambda$dependingOn$0(IncrementalVersionedValue.java:83) ~[main/:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.lambda$notifyCompletionListeners$6(BaseVersionedValue.java:367) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.notifyCompletionListeners(BaseVersionedValue.java:362) ~[main/:?]
> at org.apache.ignite.internal.causality.BaseVersionedValue.complete(BaseVersionedValue.java:228) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.lambda$completeInternal$2(IncrementalVersionedValue.java:283) ~[main/:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883) ~[?:?]
> at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2253) ~[?:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue.completeInternal(IncrementalVersionedValue.java:283) ~[main/:?]
> at org.apache.ignite.internal.causality.IncrementalVersionedValue$1.onUpdate(IncrementalVersionedValue.java:112) ~[main/:?]
> at org.apache.ignite.internal.metastorage.server.WatchProcessor.notifyUpdateRevisionListeners(WatchProcessor.java:377) ~[main/:?]
>
> Looks like there is a race between electing a zone primary and creating a table partition storage for the same partition.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)