[ https://issues.apache.org/jira/browse/IGNITE-18505?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vyacheslav Koptilin updated IGNITE-18505: ----------------------------------------- Labels: ignite-3 (was: ) > Thread pool for components start > -------------------------------- > > Key: IGNITE-18505 > URL: https://issues.apache.org/jira/browse/IGNITE-18505 > Project: Ignite > Issue Type: Improvement > Reporter: Vladislav Pyatkov > Priority: Major > Labels: ignite-3 > > *Motivation* > The most components are started in asynchronous manner to avoid hold CMG > threads too long: > {code} > // using the default executor to avoid blocking the CMG Manager threads > .thenRunAsync(() -> { > LOG.info("Join complete, starting the remaining components"); > // Start all other components after the join request has completed and > the node has been validated. > try { > lifecycleManager.startComponents( > metaStorageMgr, > clusterCfgMgr, > metricManager, > distributionZoneManager, > computeComponent, > replicaMgr, > txManager, > baselineMgr, > dataStorageMgr, > schemaManager, > volatileLogStorageFactoryCreator, > outgoingSnapshotsManager, > distributedTblMgr, > indexManager, > qryEngine, > clientHandlerModule > ); > } catch (NodeStoppingException e) { > throw new CompletionException(e); > } > }) > {code} > But the default treads pool is not a place for run critical code (the pool > can be used by client application). > *Divination of done* > All components start in node internal thread pool. -- This message was sent by Atlassian Jira (v8.20.10#820010)