You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2019/04/05 13:31:29 UTC
[ignite] branch master updated: IGNITE-11361 Web console:
Actualized cluster configuration.
This is an automated email from the ASF dual-hosted git repository.
akuznetsov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 83c3703 IGNITE-11361 Web console: Actualized cluster configuration.
83c3703 is described below
commit 83c3703e00847eb2f52c05fe575c591af9bdbf0e
Author: Vasiliy Sisko <vs...@gridgain.com>
AuthorDate: Fri Apr 5 20:31:15 2019 +0700
IGNITE-11361 Web console: Actualized cluster configuration.
---
modules/web-console/backend/app/schemas.js | 14 +-
.../cluster-edit-form/templates/communication.pug | 17 +++
.../cluster-edit-form/templates/data-storage.pug | 13 +-
.../cluster-edit-form/templates/misc.pug | 167 ++++++++++++++++++---
.../generator/generator/AbstractTransformer.js | 4 +-
.../generator/generator/ConfigurationGenerator.js | 51 ++++++-
.../generator/defaults/Cluster.service.js | 7 +-
.../app/configuration/services/Clusters.ts | 10 +-
.../WebConsoleConfigurationSelfTest.java | 21 +++
9 files changed, 270 insertions(+), 34 deletions(-)
diff --git a/modules/web-console/backend/app/schemas.js b/modules/web-console/backend/app/schemas.js
index 50b97f3..3e62a3d 100644
--- a/modules/web-console/backend/app/schemas.js
+++ b/modules/web-console/backend/app/schemas.js
@@ -1085,6 +1085,7 @@ module.exports.factory = function(mongoose) {
clientFailureDetectionTimeout: Number,
systemWorkerBlockedTimeout: Number,
workDirectory: String,
+ igniteHome: String,
lateAffinityAssignment: Boolean,
utilityCacheKeepAliveTime: Number,
asyncCallbackPoolSize: Number,
@@ -1214,7 +1215,18 @@ module.exports.factory = function(mongoose) {
walAutoArchiveAfterInactivity: Number
},
mvccVacuumThreadCount: Number,
- mvccVacuumFrequency: Number
+ mvccVacuumFrequency: Number,
+ authenticationEnabled: Boolean,
+ sqlQueryHistorySize: Number,
+ lifecycleBeans: [String],
+ addressResolver: String,
+ mBeanServer: String,
+ networkCompressionLevel: Number,
+ includeProperties: [String],
+ cacheStoreSessionListenerFactories: [String],
+ autoActivationEnabled: {type: Boolean, default: true},
+ sqlSchemas: [String],
+ communicationFailureResolver: String
});
Cluster.index({name: 1, space: 1}, {unique: true});
diff --git a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/communication.pug b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/communication.pug
index 0f7ce23..41ef206 100644
--- a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/communication.pug
+++ b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/communication.pug
@@ -56,6 +56,16 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
min: '1',
tip: 'Message send retries count'
})
+ .pc-form-grid-col-30(ng-if='$ctrl.available("2.8.0")')
+ +form-field__number({
+ label: 'Compression level:',
+ model: `${model}.networkCompressionLevel`,
+ name: '"networkCompressionLevel"',
+ placeholder: '1',
+ min: '0',
+ max: '9',
+ tip: 'Compression level of internal network messages'
+ })
.pc-form-grid-col-30(ng-if='$ctrl.available(["1.0.0", "2.3.0"])')
+form-field__number({
label: 'Discovery startup delay:',
@@ -65,6 +75,13 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
min: '1',
tip: 'This value is used to expire messages from waiting list whenever node discovery discrepancies happen'
})
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.5.0")')
+ +form-field__java-class({
+ label: 'Failure resolver:',
+ model: `${model}.communicationFailureResolver`,
+ name: '"communicationFailureResolver"',
+ tip: 'Communication failure resovler'
+ })
.pc-form-grid-col-60
+form-field__java-class({
label: 'Communication listener:',
diff --git a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/data-storage.pug b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/data-storage.pug
index caab4ea..a3ec375 100644
--- a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/data-storage.pug
+++ b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/data-storage.pug
@@ -18,7 +18,8 @@ include /app/helpers/jade/mixins
include /app/configuration/mixins
-var form = 'dataStorageConfiguration'
--var model = '$ctrl.clonedCluster.dataStorageConfiguration'
+-var clusterModel = '$ctrl.clonedCluster'
+-var model = clusterModel + '.dataStorageConfiguration'
-var dfltRegionModel = model + '.defaultDataRegionConfiguration'
-var dataRegionConfigurations = model + '.dataRegionConfigurations'
@@ -501,6 +502,14 @@ panel-collapsible(ng-show='$ctrl.available("2.3.0")' ng-form=form on-open=`ui.lo
name: '"DataStorageWalCompactionEnabled"',
tip: 'If true, system filters and compresses WAL archive in background'
})
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.5.0")')
+ +form-field__checkbox({
+ label: 'Authentication enabled',
+ model: `${clusterModel}.authenticationEnabled`,
+ name: '"authenticationEnabled"',
+ disabled: `!$ctrl.Clusters.persistenceEnabled(${model})`,
+ tip: 'Enable user authentication for cluster with persistence'
+ })
.pca-form-column-6
- +preview-xml-java(model, 'clusterDataStorageConfiguration')
+ +preview-xml-java(clusterModel, 'clusterDataStorageConfiguration')
diff --git a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/misc.pug b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/misc.pug
index 9494e0d..bda42eb 100644
--- a/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/misc.pug
+++ b/modules/web-console/frontend/app/configuration/components/page-configure-advanced/components/cluster-edit-form/templates/misc.pug
@@ -35,7 +35,106 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
If not provided, the method will use work directory under IGNITE_HOME specified by IgniteConfiguration#setIgniteHome(String)\
or IGNITE_HOME environment variable or system property.'
})
+ .pc-form-grid-col-60
+ +form-field__text({
+ label: 'Ignite home:',
+ model: `${model}.igniteHome`,
+ name: '"igniteHome"',
+ placeholder: 'Input ignite home directory',
+ tip: 'Ignite installation folder'
+ })
+ .pc-form-grid-col-60
+ mixin life-cycle-beans()
+ .ignite-form-field
+ -let items = `${model}.lifecycleBeans`;
+
+ list-editable(
+ ng-model=items
+ list-editable-cols=`::[{
+ name: 'Lifecycle beans:',
+ tip: 'Collection of life-cycle beans.\
+ These beans will be automatically notified of grid life-cycle events'
+ }]`
+ )
+ list-editable-item-view {{ $item }}
+
+ list-editable-item-edit
+ +list-java-class-field('Bean', '$item', '"bean"', items)
+ +form-field__error({
+ error: 'igniteUnique',
+ message: 'Bin with such class name already configured!'
+ })
+
+ list-editable-no-items
+ list-editable-add-item-button(
+ add-item=`$editLast((${items} = ${items} || []).push(""))`
+ label-single='Bean'
+ label-multiple='Beans'
+ )
+ - var form = '$parent.form'
+ +life-cycle-beans
+ - var form = 'misc'
+ .pc-form-grid-col-60
+ +form-field__java-class({
+ label: 'Address resolver:',
+ model: `${model}.addressResolver`,
+ name: '"discoAddressResolver"',
+ tip: 'Address resolver for addresses mapping determination'
+ })
+ .pc-form-grid-col-60
+ +form-field__java-class({
+ label: 'MBean server:',
+ model: `${model}.mBeanServer`,
+ name: '"mBeanServer"',
+ tip: 'MBean server'
+ })
+ .pc-form-grid-col-60
+ .ignite-form-field
+ +list-text-field({
+ items: `${model}.includeProperties`,
+ lbl: 'Include properties',
+ name: 'includeProperties',
+ itemName: 'property',
+ itemsName: 'properties'
+ })(
+ list-editable-cols=`::[{
+ name: 'Include properties:',
+ tip: 'System or environment property names to include into node attributes'
+ }]`
+ )
+ +form-field__error({error: 'igniteUnique', message: 'Such property already exists!'})
+ .pc-form-grid-col-60
+ mixin store-session-listener-factories()
+ .ignite-form-field
+ -let items = `${model}.cacheStoreSessionListenerFactories`;
+
+ list-editable(
+ ng-model=items
+ list-editable-cols=`::[{
+ name: 'Store session listener factories:',
+ tip: 'Default store session listener factories for all caches'
+ }]`
+ )
+ list-editable-item-view {{ $item }}
+
+ list-editable-item-edit
+ +list-java-class-field('Listener', '$item', '"Listener"', items)
+ +form-field__error({
+ error: 'igniteUnique',
+ message: 'Listener with such class name already exists!'
+ })
+
+ list-editable-no-items
+ list-editable-add-item-button(
+ add-item=`$editLast((${items} = ${items} || []).push(""))`
+ label-single='listener'
+ label-multiple='listeners'
+ )
+
+ - var form = '$parent.form'
+ +store-session-listener-factories
+ - var form = 'misc'
//- Since ignite 2.0
.pc-form-grid-col-60(ng-if-start='$ctrl.available("2.0.0")')
+form-field__text({
@@ -45,15 +144,49 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
placeholder: 'Input consistent ID',
tip: 'Consistent globally unique node ID which survives node restarts'
})
- .pc-form-grid-col-60
+ .pc-form-grid-col-60(ng-if-end)
+form-field__java-class({
label: 'Warmup closure:',
model: `${model}.warmupClosure`,
name: '"warmupClosure"',
tip: 'This closure will be executed before actual grid instance start'
})
-
- .pc-form-grid-col-60
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.1.0")')
+ +form-field__number({
+ label: 'Long query timeout:',
+ model: `${model}.longQueryWarningTimeout`,
+ name: '"LongQueryWarningTimeout"',
+ placeholder: '3000',
+ min: '0',
+ tip: 'Timeout in milliseconds after which long query warning will be printed'
+ })
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.7.0")')
+ .ignite-form-field
+ +list-text-field({
+ items: `${model}.sqlSchemas`,
+ lbl: 'SQL schemas',
+ name: 'sqlSchemas',
+ itemName: 'schema',
+ itemsName: 'schemas'
+ })(
+ list-editable-cols=`::[{
+ name: 'SQL schemas:',
+ tip: 'SQL schemas to be created on node startup.<br/>
+ Schemas are created on local node only and are not propagated to other cluster nodes.<br/>
+ Created schemas cannot be dropped.'
+ }]`
+ )
+ +form-field__error({error: 'igniteUnique', message: 'Such property already exists!'})
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.8.0")')
+ +form-field__number({
+ label: 'SQL query history size:',
+ model: `${model}.sqlQueryHistorySize`,
+ name: '"sqlQueryHistorySize"',
+ placeholder: '1000',
+ min: '0',
+ tip: 'Number of SQL query history elements to keep in memory.'
+ })
+ .pc-form-grid-col-60(ng-if-start='$ctrl.available("2.0.0")')
+form-field__checkbox({
label: 'Active on start',
model: model + '.activeOnStart',
@@ -66,13 +199,19 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
model: model + '.cacheSanityCheckEnabled',
name: '"cacheSanityCheckEnabled"',
tip: 'If enabled, then Ignite will perform the following checks and throw an exception if check fails<br/>\
- <ul>\
- <li>Cache entry is not externally locked with lock or lockAsync methods when entry is enlisted to transaction</li>\
- <li>Each entry in affinity group - lock transaction has the same affinity key as was specified on affinity transaction start</li>\
- <li>Each entry in partition group - lock transaction belongs to the same partition as was specified on partition transaction start</li>\
- </ul>'
+ <ul>\
+ <li>Cache entry is not externally locked with lock or lockAsync methods when entry is enlisted to transaction</li>\
+ <li>Each entry in affinity group - lock transaction has the same affinity key as was specified on affinity transaction start</li>\
+ <li>Each entry in partition group - lock transaction belongs to the same partition as was specified on partition transaction start</li>\
+ </ul>'
+ })
+ .pc-form-grid-col-60(ng-if='$ctrl.available("2.4.0")')
+ +form-field__checkbox({
+ label: 'Auto activation enabled',
+ model: model + '.autoActivationEnabled',
+ name: '"autoActivationEnabled"',
+ tip: 'Cluster is enabled to activate automatically when all nodes from the BaselineTopology join the cluster'
})
-
.pc-form-grid-col-60(ng-if='$ctrl.available(["1.0.0", "2.1.0"])')
+form-field__checkbox({
label: 'Late affinity assignment',
@@ -80,15 +219,5 @@ panel-collapsible(ng-form=form on-open=`ui.loadPanel('${form}')`)
name: '"lateAffinityAssignment"',
tip: 'With late affinity assignment mode if primary node was changed for some partition this nodes becomes primary only when rebalancing for all assigned primary partitions is finished'
})
-
- .pc-form-grid-col-60(ng-if='$ctrl.available("2.1.0")')
- +form-field__number({
- label: 'Long query timeout:',
- model: `${model}.longQueryWarningTimeout`,
- name: '"LongQueryWarningTimeout"',
- placeholder: '3000',
- min: '0',
- tip: 'Timeout in milliseconds after which long query warning will be printed'
- })
.pca-form-column-6
+preview-xml-java(model, 'clusterMisc', 'caches')
diff --git a/modules/web-console/frontend/app/configuration/generator/generator/AbstractTransformer.js b/modules/web-console/frontend/app/configuration/generator/generator/AbstractTransformer.js
index 17ecf7f..ac2d8db 100644
--- a/modules/web-console/frontend/app/configuration/generator/generator/AbstractTransformer.js
+++ b/modules/web-console/frontend/app/configuration/generator/generator/AbstractTransformer.js
@@ -146,8 +146,8 @@ export default class AbstractTransformer {
}
// Generate memory configuration group.
- static clusterDataStorageConfiguration(dataStorageCfg, available) {
- return this.toSection(this.generator.clusterDataStorageConfiguration(dataStorageCfg, available));
+ static clusterDataStorageConfiguration(cluster, available) {
+ return this.toSection(this.generator.clusterDataStorageConfiguration(cluster, available));
}
// Generate marshaller group.
diff --git a/modules/web-console/frontend/app/configuration/generator/generator/ConfigurationGenerator.js b/modules/web-console/frontend/app/configuration/generator/generator/ConfigurationGenerator.js
index 3b24f14..587dae6 100644
--- a/modules/web-console/frontend/app/configuration/generator/generator/ConfigurationGenerator.js
+++ b/modules/web-console/frontend/app/configuration/generator/generator/ConfigurationGenerator.js
@@ -96,7 +96,7 @@ export default class IgniteConfigurationGenerator {
// Since ignite 2.3
if (available('2.3.0'))
- this.clusterDataStorageConfiguration(cluster.dataStorageConfiguration, available, cfg);
+ this.clusterDataStorageConfiguration(cluster, available, cfg);
this.clusterDeployment(cluster, available, cfg);
this.clusterEvents(cluster, available, cfg);
@@ -979,6 +979,12 @@ export default class IgniteConfigurationGenerator {
.longProperty('networkSendRetryDelay')
.intProperty('networkSendRetryCount');
+ if (available('2.8.0'))
+ cfg.intProperty('networkCompressionLevel');
+
+ if (available('2.5.0'))
+ cfg.emptyBeanProperty('communicationFailureResolver');
+
if (available(['1.0.0', '2.3.0']))
cfg.longProperty('discoveryStartupDelay');
@@ -1511,12 +1517,16 @@ export default class IgniteConfigurationGenerator {
}
// Generate data storage configuration.
- static clusterDataStorageConfiguration(dataStorageCfg, available, cfg = this.igniteConfigurationBean()) {
+ static clusterDataStorageConfiguration(cluster, available, cfg = this.igniteConfigurationBean(cluster)) {
if (!available('2.3.0'))
return cfg;
const available2_4 = available('2.4.0');
+
const available2_7 = available('2.7.0');
+
+ const dataStorageCfg = cluster.dataStorageConfiguration;
+
const storageBean = new Bean('org.apache.ignite.configuration.DataStorageConfiguration', 'dataStorageCfg', dataStorageCfg, clusterDflts.dataStorageConfiguration);
storageBean.intProperty('pageSize')
@@ -1596,25 +1606,50 @@ export default class IgniteConfigurationGenerator {
if (factoryBean)
storageBean.beanProperty('fileIOFactory', factoryBean);
- if (storageBean.isEmpty())
- return cfg;
+ if (_.get(dataStorageCfg, 'defaultDataRegionConfiguration.persistenceEnabled')
+ || _.find(_.get(dataStorageCfg, 'dataRegionConfigurations'), (storeCfg) => storeCfg.persistenceEnabled))
+ cfg.boolProperty('authenticationEnabled');
- cfg.beanProperty('dataStorageConfiguration', storageBean);
+ if (storageBean.nonEmpty())
+ cfg.beanProperty('dataStorageConfiguration', storageBean);
return cfg;
}
// Generate miscellaneous configuration.
static clusterMisc(cluster, available, cfg = this.igniteConfigurationBean(cluster)) {
- cfg.stringProperty('workDirectory');
+ const available2_0 = available('2.0.0');
- if (available('2.0.0')) {
- cfg.stringProperty('consistentId')
+ cfg.pathProperty('workDirectory')
+ .pathProperty('igniteHome')
+ .varArgProperty('lifecycleBeans', 'lifecycleBeans', _.map(cluster.lifecycleBeans, (bean) => new EmptyBean(bean)), 'org.apache.ignite.lifecycle.LifecycleBean')
+ .emptyBeanProperty('addressResolver')
+ .emptyBeanProperty('mBeanServer')
+ .varArgProperty('includeProperties', 'includeProperties', cluster.includeProperties);
+
+ if (cluster.cacheStoreSessionListenerFactories) {
+ const factories = _.map(cluster.cacheStoreSessionListenerFactories, (factory) => new EmptyBean(factory));
+
+ cfg.varArgProperty('cacheStoreSessionListenerFactories', 'cacheStoreSessionListenerFactories', factories, 'javax.cache.configuration.Factory');
+ }
+
+ if (available2_0) {
+ cfg
+ .stringProperty('consistentId')
.emptyBeanProperty('warmupClosure')
.boolProperty('activeOnStart')
.boolProperty('cacheSanityCheckEnabled');
}
+ if (available('2.7.0'))
+ cfg.varArgProperty('sqlSchemas', 'sqlSchemas', cluster.sqlSchemas);
+
+ if (available('2.8.0'))
+ cfg.intProperty('sqlQueryHistorySize');
+
+ if (available('2.4.0'))
+ cfg.boolProperty('autoActivationEnabled');
+
if (available(['1.0.0', '2.1.0']))
cfg.boolProperty('lateAffinityAssignment');
diff --git a/modules/web-console/frontend/app/configuration/generator/generator/defaults/Cluster.service.js b/modules/web-console/frontend/app/configuration/generator/generator/defaults/Cluster.service.js
index e486ee6..fc69e32 100644
--- a/modules/web-console/frontend/app/configuration/generator/generator/defaults/Cluster.service.js
+++ b/modules/web-console/frontend/app/configuration/generator/generator/defaults/Cluster.service.js
@@ -442,7 +442,12 @@ const DFLT_CLUSTER = {
sslEnabled: false,
useIgniteSslContextFactory: true,
sslClientAuth: false
- }
+ },
+ authenticationEnabled: false,
+ sqlQueryHistorySize: 1000,
+ allSegmentationResolversPassRequired: true,
+ networkCompressionLevel: 1,
+ autoActivationEnabled: true
};
export default class IgniteClusterDefaults {
diff --git a/modules/web-console/frontend/app/configuration/services/Clusters.ts b/modules/web-console/frontend/app/configuration/services/Clusters.ts
index b03a9e0..1e478ed 100644
--- a/modules/web-console/frontend/app/configuration/services/Clusters.ts
+++ b/modules/web-console/frontend/app/configuration/services/Clusters.ts
@@ -16,6 +16,7 @@
*/
import get from 'lodash/get';
+import find from 'lodash/find';
import {from} from 'rxjs';
import ObjectID from 'bson-objectid/objectid';
import {uniqueName} from 'app/utils/uniqueName';
@@ -202,7 +203,8 @@ export default class Clusters {
igfss: [],
models: [],
checkpointSpi: [],
- loadBalancingSpi: []
+ loadBalancingSpi: [],
+ autoActivationEnabled: true
};
}
@@ -339,6 +341,7 @@ export default class Clusters {
const maxSize = memoryPolicy.maxSize;
const pageSize = cluster.memoryConfiguration.pageSize || this.memoryConfiguration.pageSize.default;
const maxPoolSize = Math.floor(maxSize / pageSize / perThreadLimit);
+
return maxPoolSize;
}
}
@@ -469,6 +472,11 @@ export default class Clusters {
}
};
+ persistenceEnabled(dataStorage) {
+ return !!(get(dataStorage, 'defaultDataRegionConfiguration.persistenceEnabled')
+ || find(get(dataStorage, 'dataRegionConfigurations'), (storeCfg) => storeCfg.persistenceEnabled));
+ }
+
swapSpaceSpi = {
readStripesNumber: {
default: 'availableProcessors',
diff --git a/modules/web-console/src/test/java/org/apache/ignite/console/configuration/WebConsoleConfigurationSelfTest.java b/modules/web-console/src/test/java/org/apache/ignite/console/configuration/WebConsoleConfigurationSelfTest.java
index a7fbc25..ebfd833 100644
--- a/modules/web-console/src/test/java/org/apache/ignite/console/configuration/WebConsoleConfigurationSelfTest.java
+++ b/modules/web-console/src/test/java/org/apache/ignite/console/configuration/WebConsoleConfigurationSelfTest.java
@@ -193,6 +193,18 @@ public class WebConsoleConfigurationSelfTest {
igniteCfgProps.add("pluginConfigurations");
igniteCfgProps.add("mvccVacuumFrequency");
igniteCfgProps.add("mvccVacuumThreadCount");
+ igniteCfgProps.add("authenticationEnabled");
+ igniteCfgProps.add("sqlQueryHistorySize");
+ igniteCfgProps.add("lifecycleBeans");
+ igniteCfgProps.add("addressResolver");
+ igniteCfgProps.add("mBeanServer");
+ igniteCfgProps.add("networkCompressionLevel");
+ igniteCfgProps.add("systemWorkerBlockedTimeout");
+ igniteCfgProps.add("includeProperties");
+ igniteCfgProps.add("cacheStoreSessionListenerFactories");
+ igniteCfgProps.add("sqlSchemas");
+ igniteCfgProps.add("igniteInstanceName");
+ igniteCfgProps.add("communicationFailureResolver");
Set<String> igniteCfgPropsDep = new HashSet<>();
igniteCfgPropsDep.add("gridName");
@@ -208,6 +220,15 @@ public class WebConsoleConfigurationSelfTest {
igniteCfgPropsExcl.add("clientMode");
igniteCfgPropsExcl.add("indexingSpi");
igniteCfgPropsExcl.add("nodeId");
+ igniteCfgPropsExcl.add("segmentCheckFrequency");
+ igniteCfgPropsExcl.add("allSegmentationResolversPassRequired");
+ igniteCfgPropsExcl.add("segmentationPolicy");
+ igniteCfgPropsExcl.add("segmentationResolveAttempts");
+ igniteCfgPropsExcl.add("waitForSegmentOnStart");
+ igniteCfgPropsExcl.add("segmentationResolvers");
+ igniteCfgPropsExcl.add("autoActivationEnabled");
+ igniteCfgPropsExcl.add("igniteHome");
+ igniteCfgPropsExcl.add("platformConfiguration");
metadata.put(IgniteConfiguration.class,
new MetadataInfo(igniteCfgProps, igniteCfgPropsDep, igniteCfgPropsExcl));