You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Denis Chudov (Jira)" <ji...@apache.org> on 2023/05/29 15:19:00 UTC

[jira] [Created] (IGNITE-19591) Possible bottleneck with RocksDB on multiple table creation, with RocksDB as table storage

Denis Chudov created IGNITE-19591:
-------------------------------------

             Summary: Possible bottleneck with RocksDB on multiple table creation, with RocksDB as table storage
                 Key: IGNITE-19591
                 URL: https://issues.apache.org/jira/browse/IGNITE-19591
             Project: Ignite
          Issue Type: Bug
            Reporter: Denis Chudov


Scenario:
 * 1 node cluster
 * rocksdb table storage ( created via SQL query {{create zone test_zone engine rocksdb with partitions=25}} )
 * sequential tables creation using this zone (queries like {{CREATE TABLE table_0(id INT PRIMARY KEY, column_1 VARCHAR, column_2 VARCHAR, column_3 VARCHAR, column_4 VARCHAR) with primary_zone='TEST_ZONE' }}). Number of talbes: 1000, pause between query executions: 30 ms.

After creating a couple of hundreds of tables, queries start failing with timeout.

Threads are busy with RocksDB write operations:

 
 
{code:java}
"%sqllogic0%vault-1" #92 prio=5 os_prio=0 cpu=2687.50ms elapsed=58.52s tid=0x000001e49bdfc000 nid=0x6f24 runnable  [0x0000002e079fd000]    java.lang.Thread.State: RUNNABLE     at org.rocksdb.RocksDB.open(Native Method)     at org.rocksdb.RocksDB.open(RocksDB.java:307)     at org.apache.ignite.internal.storage.rocksdb.RocksDbTableStorage.lambda$start$1(RocksDbTableStorage.java:251)     at org.apache.ignite.internal.storage.rocksdb.RocksDbTableStorage$$Lambda$1786/0x000000080148a040.run(Unknown Source)     at org.apache.ignite.internal.util.IgniteUtils.inBusyLock(IgniteUtils.java:889)     at org.apache.ignite.internal.storage.rocksdb.RocksDbTableStorage.start(RocksDbTableStorage.java:223)     at org.apache.ignite.internal.table.distributed.TableManager.createTableStorage(TableManager.java:1159)     at org.apache.ignite.internal.table.distributed.TableManager.createTableLocally(TableManager.java:1103)     at org.apache.ignite.internal.table.distributed.TableManager.onTableCreate(TableManager.java:547)     at org.apache.ignite.internal.table.distributed.TableManager$1.onCreate(TableManager.java:460)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$1$$Lambda$1711/0x0000000801460440.apply(Unknown Source)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyPublicListeners(ConfigurationNotifier.java:488)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$1.visitNamedListNode(ConfigurationNotifier.java:206)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier$1.visitNamedListNode(ConfigurationNotifier.java:129)     at org.apache.ignite.internal.schema.configuration.TablesNode.traverseChildren(Unknown Source)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyListeners(ConfigurationNotifier.java:129)     at org.apache.ignite.internal.configuration.notifications.ConfigurationNotifier.notifyListeners(ConfigurationNotifier.java:91)     at org.apache.ignite.internal.configuration.ConfigurationRegistry$3$1.visitInnerNode(ConfigurationRegistry.java:271)     at org.apache.ignite.internal.configuration.ConfigurationRegistry$3$1.visitInnerNode(ConfigurationRegistry.java:254)     at org.apache.ignite.internal.configuration.SuperRoot.traverseChildren(SuperRoot.java:105)     at org.apache.ignite.internal.configuration.ConfigurationRegistry$3.onConfigurationUpdated(ConfigurationRegistry.java:254)     at org.apache.ignite.internal.configuration.ConfigurationChanger$3.lambda$onEntriesChanged$1(ConfigurationChanger.java:658)     at org.apache.ignite.internal.configuration.ConfigurationChanger$3$$Lambda$1702/0x000000080145d440.apply(Unknown Source)     at java.util.concurrent.CompletableFuture$UniCompose.tryFire(java.base@13.0.1/CompletableFuture.java:1146)     at java.util.concurrent.CompletableFuture.postComplete(java.base@13.0.1/CompletableFuture.java:506)     at java.util.concurrent.CompletableFuture$AsyncRun.run(java.base@13.0.1/CompletableFuture.java:1813)     at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@13.0.1/ThreadPoolExecutor.java:1128)     at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@13.0.1/ThreadPoolExecutor.java:628)     at java.lang.Thread.run(java.base@13.0.1/Thread.java:830){code}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)