[ https://issues.apache.org/jira/browse/IGNITE-21451?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Igor updated IGNITE-21451: -------------------------- Description: h3. Steps to reproduce: Run the next queries in cycle with 50 repeats in single connection: {code:java} drop table if exists dropNoMoreIndexedColumn create zone if not exists "rocksdb" engine rocksdb create table dropNoMoreIndexedColumn(k1 TIMESTAMP not null, k2 INTEGER not null, v0 TINYINT not null, v1 SMALLINT not null, v2 INTEGER not null, v3 BIGINT not null, v4 VARCHAR not null, v5 TIMESTAMP not null, primary key (k1, k2)) with PRIMARY_ZONE='rocksdb' create index dropNoMoreIndexedColumn_v1idx on dropNoMoreIndexedColumn using TREE (v1) drop index dropNoMoreIndexedColumn_v1idx alter table dropNoMoreIndexedColumn drop column v1 {code} h3. Expected: All queries are executed. h3. Actual: On repeat 31 the client freeze for infinite amount of time. h3. Analysis: With storages aimem and aipersist the issue is not happen. The servers contain repeated error in logs: {code:java} 2024-02-05 13:47:24:812 +0100 [ERROR][%DropColumnsTest_cluster_0%JRaft-FSMCaller-Disruptor-metastorage-_stripe_0-0][WatchProcessor] Error occurred when notifying safe time advanced callback java.util.concurrent.CompletionException: java.lang.UnsupportedOperationException: Update log is not supported in RocksDB storage. at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:645) at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478) 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:834) Caused by: java.lang.UnsupportedOperationException: Update log is not supported in RocksDB storage. at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.trimUpdateLog(RocksDbMvPartitionStorage.java:908) at org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.trimUpdateLog(SnapshotAwarePartitionDataStorage.java:244) at org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.lambda$vacuumBatch$0(GcUpdateHandler.java:81) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.lambda$runConsistently$2(RocksDbMvPartitionStorage.java:228) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.busy(RocksDbMvPartitionStorage.java:1431) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.runConsistently(RocksDbMvPartitionStorage.java:213) at org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.runConsistently(SnapshotAwarePartitionDataStorage.java:80) at org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.vacuumBatch(GcUpdateHandler.java:80) at org.apache.ignite.internal.table.distributed.gc.MvGc.lambda$scheduleGcForStorage$7(MvGc.java:242) at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:642) ... 4 more {code} was: h3. Steps to reproduce: Run the next queries in cycle with 50 repeats in single connection: {code:java} drop table if exists dropNoMoreIndexedColumn create zone if not exists "rocksdb" engine rocksdb create table dropNoMoreIndexedColumn(k1 TIMESTAMP not null, k2 INTEGER not null, v0 TINYINT not null, v1 SMALLINT not null, v2 INTEGER not null, v3 BIGINT not null, v4 VARCHAR not null, v5 TIMESTAMP not null, primary key (k1, k2)) with PRIMARY_ZONE='rocksdb' create index dropNoMoreIndexedColumn_v1idx on dropNoMoreIndexedColumn using TREE (v1) drop index dropNoMoreIndexedColumn_v1idx alter table dropNoMoreIndexedColumn drop column v1 {code} h3. Expected: All queries are executed. h3. Actual: On repeat 31 the client freeze for infinite amount of time. h3. Analysis: The servers contain repeated error in logs: {code:java} 2024-02-05 13:47:24:812 +0100 [ERROR][%DropColumnsTest_cluster_0%JRaft-FSMCaller-Disruptor-metastorage-_stripe_0-0][WatchProcessor] Error occurred when notifying safe time advanced callback java.util.concurrent.CompletionException: java.lang.UnsupportedOperationException: Update log is not supported in RocksDB storage. at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:645) at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478) 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:834) Caused by: java.lang.UnsupportedOperationException: Update log is not supported in RocksDB storage. at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.trimUpdateLog(RocksDbMvPartitionStorage.java:908) at org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.trimUpdateLog(SnapshotAwarePartitionDataStorage.java:244) at org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.lambda$vacuumBatch$0(GcUpdateHandler.java:81) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.lambda$runConsistently$2(RocksDbMvPartitionStorage.java:228) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.busy(RocksDbMvPartitionStorage.java:1431) at org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.runConsistently(RocksDbMvPartitionStorage.java:213) at org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.runConsistently(SnapshotAwarePartitionDataStorage.java:80) at org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.vacuumBatch(GcUpdateHandler.java:80) at org.apache.ignite.internal.table.distributed.gc.MvGc.lambda$scheduleGcForStorage$7(MvGc.java:242) at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:642) ... 4 more {code} > RocksDB: repeat of create table and drop column leads to freeze of client > ------------------------------------------------------------------------- > > Key: IGNITE-21451 > URL: https://issues.apache.org/jira/browse/IGNITE-21451 > Project: Ignite > Issue Type: Bug > Components: persistence > Affects Versions: 3.0.0-beta1 > Environment: 2 nodes cluster running locally. > Reporter: Igor > Priority: Major > Labels: ignite-3 > > h3. Steps to reproduce: > Run the next queries in cycle with 50 repeats in single connection: > {code:java} > drop table if exists dropNoMoreIndexedColumn > create zone if not exists "rocksdb" engine rocksdb > create table dropNoMoreIndexedColumn(k1 TIMESTAMP not null, k2 INTEGER not > null, v0 TINYINT not null, v1 SMALLINT not null, v2 INTEGER not null, v3 > BIGINT not null, v4 VARCHAR not null, v5 TIMESTAMP not null, primary key (k1, > k2)) with PRIMARY_ZONE='rocksdb' > create index dropNoMoreIndexedColumn_v1idx on dropNoMoreIndexedColumn using > TREE (v1) > drop index dropNoMoreIndexedColumn_v1idx > alter table dropNoMoreIndexedColumn drop column v1 {code} > h3. Expected: > All queries are executed. > h3. Actual: > On repeat 31 the client freeze for infinite amount of time. > h3. Analysis: > With storages aimem and aipersist the issue is not happen. > The servers contain repeated error in logs: > {code:java} > 2024-02-05 13:47:24:812 +0100 > [ERROR][%DropColumnsTest_cluster_0%JRaft-FSMCaller-Disruptor-metastorage-_stripe_0-0][WatchProcessor] > Error occurred when notifying safe time advanced callback > java.util.concurrent.CompletionException: > java.lang.UnsupportedOperationException: Update log is not supported in > RocksDB storage. > at > java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) > at > java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) > at > java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:645) > at > java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478) > 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:834) > Caused by: java.lang.UnsupportedOperationException: Update log is not > supported in RocksDB storage. > at > org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.trimUpdateLog(RocksDbMvPartitionStorage.java:908) > at > org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.trimUpdateLog(SnapshotAwarePartitionDataStorage.java:244) > at > org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.lambda$vacuumBatch$0(GcUpdateHandler.java:81) > at > org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.lambda$runConsistently$2(RocksDbMvPartitionStorage.java:228) > at > org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.busy(RocksDbMvPartitionStorage.java:1431) > at > org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.runConsistently(RocksDbMvPartitionStorage.java:213) > at > org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.runConsistently(SnapshotAwarePartitionDataStorage.java:80) > at > org.apache.ignite.internal.table.distributed.gc.GcUpdateHandler.vacuumBatch(GcUpdateHandler.java:80) > at > org.apache.ignite.internal.table.distributed.gc.MvGc.lambda$scheduleGcForStorage$7(MvGc.java:242) > at > java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:642) > ... 4 more {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)