[ignite] branch ignite-2.8 updated (b5181d1 -> 39a808c)
This is an automated email from the ASF dual-hosted git repository. mmuzaf pushed a change to branch ignite-2.8 in repository https://gitbox.apache.org/repos/asf/ignite.git. from b5181d1 IGNITE-12547 Replace array of AtomicLong with AtomicLongArray in free list - Fixes #7267. add 39a808c IGNITE-12227: [cherry-pick] Fix discovery pending messages logic causing incorrect calculation of baseline auto-adjust flag (#7278) No new revisions were added by this update. Summary of changes: .../rest/JettyRestProcessorBaselineSelfTest.java | 19 ++- .../org/apache/ignite/IgniteSystemProperties.java | 7 +- .../cluster/DistributedBaselineConfiguration.java | 101 .../baseline/autoadjust/ChangeTopologyWatcher.java | 17 ++- .../distributed/DistributedBooleanProperty.java| 2 +- ...ure.java => DistributedChangeableProperty.java} | 28 +++-- .../distributed/DistributedComparableProperty.java | 2 +- .../DistributedConfigurationLifecycleListener.java | 6 + .../DistributedConfigurationProcessor.java | 76 ++-- .../distributed/DistributedProperty.java | 119 +++ .../distributed/DistributedPropertyDispatcher.java | 21 ++-- .../distributed/PropertyUpdateClosure.java | 12 +- ...roperty.java => SimpleDistributedProperty.java} | 92 +- .../persistence/DmsDataWriterWorker.java | 2 + .../ignite/spi/discovery/tcp/ServerImpl.java | 38 -- .../ClusterBaselineNodesMetricsSelfTest.java | 22 +--- .../processors/DeadLockOnNodeLeftExchangeTest.java | 3 +- .../IgniteAbstractDynamicCacheStartFailTest.java | 22 ++-- ...usterActivateDeactivateTestWithPersistence.java | 15 --- ...teDynamicCacheStartFailWithPersistenceTest.java | 6 - .../distributed/CacheBaselineTopologyTest.java | 21 +--- .../CacheDataLossOnPartitionMoveTest.java | 6 +- .../CachePartitionLostWhileClearingTest.java | 8 +- .../distributed/CacheRentingStateRepairTest.java | 7 +- .../PartitionsEvictManagerAbstractTest.java| 2 +- .../GridCacheRebalancingWithAsyncClearingTest.java | 7 +- .../processors/cache/mvcc/CacheMvccVacuumTest.java | 19 +-- .../persistence/CleanupRestoredCachesSlowTest.java | 5 +- ...niteBaselineAffinityTopologyActivationTest.java | 24 ++-- .../persistence/IgnitePdsCorruptedIndexTest.java | 7 +- .../IgnitePdsPartitionFilesDestroyTest.java| 54 - ...gniteRebalanceScheduleResendPartitionsTest.java | 16 +-- ...ocalWalModeChangeDuringRebalancingSelfTest.java | 11 +- .../ClientAffinityAssignmentWithBaselineTest.java | 19 +-- .../IgniteAbsentEvictionNodeOutOfBaselineTest.java | 7 +- ...hangingBaselineDownCachePutAllFailoverTest.java | 7 +- ...hangingBaselineDownCacheRemoveFailoverTest.java | 6 +- ...eChangingBaselineUpCachePutAllFailoverTest.java | 7 +- ...eChangingBaselineUpCacheRemoveFailoverTest.java | 7 +- .../persistence/db/IgniteLogicalRecoveryTest.java | 9 +- ...IgnitePdsCacheWalDisabledOnRebalancingTest.java | 18 +-- .../db/IgnitePdsDataRegionMetricsTest.java | 6 +- .../cache/persistence/db/IgnitePdsWithTtlTest.java | 15 ++- .../SlowHistoricalRebalanceSmallHistoryTest.java | 7 +- ...CheckpointSimulationWithRealCpDisabledTest.java | 16 --- ...eWalFlushMultiNodeFailoverAbstractSelfTest.java | 6 +- .../persistence/db/wal/WalCompactionTest.java | 8 +- .../transactions/PartitionUpdateCounterTest.java | 8 +- .../TxCrossCachePartitionConsistencyTest.java | 3 - .../TxPartitionCounterStateAbstractTest.java | 26 ++-- .../TxPartitionCounterStateConsistencyTest.java| 4 +- ...unterStateConsistencyVolatileRebalanceTest.java | 5 + .../processors/cluster/BaselineAutoAdjustTest.java | 35 -- .../DistributedConfigurationAbstractTest.java | 132 ++--- .../DistributedConfigurationPersistentTest.java| 128 .../DistributedMetaStoragePersistentTest.java | 6 +- .../metastorage/DistributedMetaStorageTest.java| 34 -- .../service/IgniteServiceReassignmentTest.java | 6 - .../ServiceDeploymentOutsideBaselineTest.java | 30 ++--- .../IgniteDiscoveryCacheReuseSelfTest.java | 6 +- .../util/GridCommandHandlerAbstractTest.java | 2 - ...idCommandHandlerClusterByClassAbstractTest.java | 3 + .../apache/ignite/util/GridCommandHandlerTest.java | 11 ++ .../persistence/RebuildIndexLogMessageTest.java| 3 - ...ngingBaselineCacheQueryNodeRestartSelfTest.java | 7 +- 65 files changed, 560 insertions(+), 824 deletions(-) copy modules/core/src/main/java/org/apache/ignite/internal/processors/configuration/distributed/{PropertyUpdateClosure.java => DistributedChangeableProperty.java} (59%) copy modules/core/src/main/java/org/apache/ignite/internal/processors/configuration/distributed/{DistributedProperty.java => SimpleDistributedProperty.java} (55%)
[ignite] branch master updated: IGNITE-12565 Extend test coverage [IGNITE-9279] Support custom default SQL schema name - Fixes #7289.
This is an automated email from the ASF dual-hosted git repository. ipavlukhin 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 6a87307 IGNITE-12565 Extend test coverage [IGNITE-9279] Support custom default SQL schema name - Fixes #7289. 6a87307 is described below commit 6a8730754b5f1bf064ec044e7342b85c5b50627f Author: ipavlukhin AuthorDate: Thu Jan 23 15:43:30 2020 +0300 IGNITE-12565 Extend test coverage [IGNITE-9279] Support custom default SQL schema name - Fixes #7289. Signed-off-by: ipavlukhin --- .../apache/ignite/testframework/GridTestUtils.java | 19 +- .../processors/query/AbstractCustomSchemaTest.java | 197 + .../query/AbstractDefaultSchemaTest.java | 133 ++ .../query/IgniteSqlCustomSchemaTest.java | 51 ++ .../query/IgniteSqlCustomSchemaWithPdsEnabled.java | 148 .../query/IgniteSqlDefaultSchemaTest.java | 31 .../IgniteSqlSchemasDiffConfigurationsTest.java| 90 ++ .../processors/query/JdbcSqlCustomSchemaTest.java | 85 + .../processors/query/JdbcSqlDefaultSchemaTest.java | 85 + .../IgniteBinaryCacheQueryTestSuite.java | 13 ++ 10 files changed, 850 insertions(+), 2 deletions(-) diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/GridTestUtils.java b/modules/core/src/test/java/org/apache/ignite/testframework/GridTestUtils.java index 23a64f0..7a26606 100644 --- a/modules/core/src/test/java/org/apache/ignite/testframework/GridTestUtils.java +++ b/modules/core/src/test/java/org/apache/ignite/testframework/GridTestUtils.java @@ -2125,11 +2125,26 @@ public final class GridTestUtils { * Generate random alphabetical string. * * @param rnd Random object. - * @param maxLen Maximal length of string + * @param maxLen Maximal length of string. * @return Random string object. */ public static String randomString(Random rnd, int maxLen) { -int len = rnd.nextInt(maxLen); +return randomString(rnd, 0, maxLen); +} + +/** + * Generate random alphabetical string. + * + * @param rnd Random object. + * @param minLen Minimum length of string. + * @param maxLen Maximal length of string. + * @return Random string object. + */ +public static String randomString(Random rnd, int minLen, int maxLen) { +assert minLen >= 0 : "minLen >= 0"; +assert maxLen >= minLen : "maxLen >= minLen"; + +int len = maxLen == minLen ? minLen : minLen + rnd.nextInt(maxLen - minLen); StringBuilder b = new StringBuilder(len); diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/AbstractCustomSchemaTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/AbstractCustomSchemaTest.java new file mode 100644 index 000..c32dbb48 --- /dev/null +++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/AbstractCustomSchemaTest.java @@ -0,0 +1,197 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.processors.query; + +import java.sql.SQLException; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import org.apache.ignite.configuration.CacheConfiguration; +import org.apache.ignite.configuration.IgniteConfiguration; +import org.apache.ignite.internal.processors.cache.index.AbstractIndexingCommonTest; +import org.apache.ignite.testframework.GridTestUtils; +import org.junit.After; +import org.junit.Assert; +import org.junit.Test; + +/** Abstract test to verify custom sql schema. */ +public abstract class AbstractCustomSchemaTest extends AbstractIndexingCommonTest { +/** */ +protected static final String TBL_NAME = "T1"; + +/** */ +protected static final String SCHEMA_NAME_1 = "SCHEMA_1"; + +/** */ +protected static final String SCHEMA_NAME_2 = "SCHEMA_2"; + +/** */ +private static final String SCHEMA_NAME_3 = "ScHeMa3"; + +/** */ +private static final String
[ignite] branch master updated: IGNITE-12567 H2Tree goes into illegal state when non-indexed columns are dropped - Fixes #7290.
This is an automated email from the ASF dual-hosted git repository. ipavlukhin 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 41ed329 IGNITE-12567 H2Tree goes into illegal state when non-indexed columns are dropped - Fixes #7290. 41ed329 is described below commit 41ed3294ec7e1c8384bbbf7044c9ec5c7bf2622e Author: korlov42 AuthorDate: Thu Jan 23 14:44:18 2020 +0300 IGNITE-12567 H2Tree goes into illegal state when non-indexed columns are dropped - Fixes #7290. Signed-off-by: ipavlukhin --- .../processors/query/h2/database/H2Tree.java | 14 +++- .../H2DynamicColumnsAbstractBasicSelfTest.java | 37 ++ 2 files changed, 41 insertions(+), 10 deletions(-) diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/database/H2Tree.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/database/H2Tree.java index 7ab1d74..a2a3bd6 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/database/H2Tree.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/database/H2Tree.java @@ -80,9 +80,6 @@ public class H2Tree extends BPlusTree { private final IndexColumn[] cols; /** */ -private final int[] columnIds; - -/** */ private final boolean mvccEnabled; /** */ @@ -223,11 +220,6 @@ public class H2Tree extends BPlusTree { inlineIdxs = unwrappedPk ? unwrappedColsInfo.inlineIdx() : wrappedColsInfo.inlineIdx(); cols = unwrappedPk ? unwrappedColsInfo.cols() : wrappedColsInfo.cols(); -columnIds = new int[cols.length]; - -for (int i = 0; i < cols.length; i++) -columnIds[i] = cols[i].column.getColumnId(); - setIos(H2ExtrasInnerIO.getVersions(inlineSize, mvccEnabled), H2ExtrasLeafIO.getVersions(inlineSize, mvccEnabled)); this.rowCache = rowCache; @@ -453,7 +445,9 @@ public class H2Tree extends BPlusTree { return 0; for (int i = 0, len = cols.length; i < len; i++) { -int idx = columnIds[i]; +IndexColumn idxCol = cols[i]; + +int idx = idxCol.column.getColumnId(); Value v1 = r1.getValue(idx); Value v2 = r2.getValue(idx); @@ -466,7 +460,7 @@ public class H2Tree extends BPlusTree { int c = compareValues(v1, v2); if (c != 0) -return InlineIndexHelper.fixSort(c, cols[i].sortType); +return InlineIndexHelper.fixSort(c, idxCol.sortType); } return mvccCompare(r1, r2); diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/index/H2DynamicColumnsAbstractBasicSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/index/H2DynamicColumnsAbstractBasicSelfTest.java index a60ff64..f0953e2 100644 --- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/index/H2DynamicColumnsAbstractBasicSelfTest.java +++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/index/H2DynamicColumnsAbstractBasicSelfTest.java @@ -33,6 +33,7 @@ import org.apache.ignite.internal.processors.query.QueryField; import org.apache.ignite.internal.processors.query.QueryUtils; import org.apache.ignite.testframework.config.GridTestProperties; import org.h2.jdbc.JdbcSQLException; +import org.junit.Assert; import org.junit.Test; import static org.apache.ignite.testframework.config.GridTestProperties.BINARY_MARSHALLER_USE_SIMPLE_NAME_MAPPER; @@ -769,6 +770,42 @@ public abstract class H2DynamicColumnsAbstractBasicSelfTest extends DynamicColum } } +/** */ +@Test +public void testDropColumnPriorToCompoundPkIndex() throws Exception { +try { +run("CREATE TABLE test (a INT, b INT, id1 INT, id2 INT, PRIMARY KEY (id1, id2))"); + +run("INSERT INTO test (a, b, id1, id2) VALUES (1, 2, 3, 4)"); + +String qry = "SELECT a, id1, id2 FROM test WHERE id1 = 3 AND id2 = 4"; + +List> resBefore = run(qry); + +Assert.assertEquals(1, resBefore.size()); + +run("ALTER TABLE test DROP COLUMN b"); + +run("SELECT * FROM test WHERE id1 = 3 AND id2 = 4"); + +List> resAfter = run(qry); + +Assert.assertEquals(1, resAfter.size()); + +Assert.assertEquals(resBefore, resAfter); + +String plan = (String)run("EXPLAIN SELECT * FROM test WHERE id1 = 3 AND id2 = 4").get(0).get(0); + +String pkIdxName = "PUBLIC.\"_key_PK\""; + +Assert.assertTrue("Query plan does not contain index '" + pkIdxName + "': plan=" + plan, +plan.contains(pkIdxName)); +} +finally { +run("DROP TABLE IF EXISTS
[ignite] branch master updated: IGNITE-12569 Can't set serialized enum to a BinaryObject's field - Fixes #7292.
This is an automated email from the ASF dual-hosted git repository. ipavlukhin 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 e89c71d IGNITE-12569 Can't set serialized enum to a BinaryObject's field - Fixes #7292. e89c71d is described below commit e89c71d3cb769ebe25c09e241cfc6cd511b150b3 Author: korlov42 AuthorDate: Thu Jan 23 14:42:57 2020 +0300 IGNITE-12569 Can't set serialized enum to a BinaryObject's field - Fixes #7292. Signed-off-by: ipavlukhin --- .../apache/ignite/internal/binary/BinaryUtils.java | 2 +- .../binary/builder/BinaryBuilderSerializer.java| 35 +++--- .../binary/builder/BinaryObjectBuilderImpl.java| 11 +- .../BinaryObjectBuilderAdditionalSelfTest.java | 139 ++--- .../BinarySimpleNameTestPropertySelfTest.java | 3 +- 5 files changed, 152 insertions(+), 38 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java index 9568c4b..84e4e97 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java @@ -1715,7 +1715,7 @@ public class BinaryUtils { private static Object[] doReadBinaryEnumArray(BinaryInputStream in, BinaryContext ctx) { int len = in.readInt(); -Object[] arr = (Object[])Array.newInstance(BinaryObject.class, len); +Object[] arr = (Object[])Array.newInstance(BinaryEnumObjectImpl.class, len); for (int i = 0; i < len; i++) { byte flag = in.readByte(); diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java index 9e6411f..439e65c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java @@ -19,10 +19,9 @@ package org.apache.ignite.internal.binary.builder; import java.util.Collection; import java.util.IdentityHashMap; -import java.util.LinkedHashMap; import java.util.Map; import org.apache.ignite.binary.BinaryObject; -import org.apache.ignite.internal.binary.BinaryMetadata; +import org.apache.ignite.internal.binary.BinaryEnumObjectImpl; import org.apache.ignite.internal.binary.BinaryObjectExImpl; import org.apache.ignite.internal.binary.BinaryUtils; import org.apache.ignite.internal.binary.BinaryWriterExImpl; @@ -111,22 +110,24 @@ class BinaryBuilderSerializer { return; } -if (IgniteUtils.isEnum(val.getClass())) { -String clsName = ((Enum)val).getDeclaringClass().getName(); +if (val instanceof BinaryEnumObjectImpl) { +BinaryEnumObjectImpl obj = (BinaryEnumObjectImpl)val; -int typeId = writer.context().typeId(clsName); -String typeName = writer.context().userTypeName(clsName); +writer.writeByte(GridBinaryMarshaller.ENUM); +writer.writeInt(obj.typeId()); -Object[] enumVals = val.getClass().getEnumConstants(); +if (obj.typeId() == GridBinaryMarshaller.UNREGISTERED_TYPE_ID) +writer.doWriteString(obj.className()); -Map enumMap = new LinkedHashMap<>(enumVals.length); +writer.writeInt(obj.enumOrdinal()); -for (Object enumVal : enumVals) -enumMap.put(((Enum)enumVal).name(), ((Enum)enumVal).ordinal()); +return; +} -BinaryMetadata meta = new BinaryMetadata(typeId, typeName, null, null, null, true, enumMap); +if (IgniteUtils.isEnum(val.getClass())) { +String clsName = ((Enum)val).getDeclaringClass().getName(); -writer.context().updateMetadata(typeId, meta, writer.failIfUnregistered()); +int typeId = writer.context().typeId(clsName); // Need register class for marshaller to be able to deserialize enum value. writer.context().registerClass(((Enum)val).getDeclaringClass(), true, false); @@ -179,17 +180,21 @@ class BinaryBuilderSerializer { } if (val instanceof Object[]) { -int compTypeId = writer.context().typeId(((Object[])val).getClass().getComponentType().getName()); +Class compCls = ((Object[])val).getClass().getComponentType(); -if (val instanceof BinaryBuilderEnum[]) { +int compTypeId = writer.context().typeId(compCls.getName()); + +if (BinaryEnumObjectImpl.class.isAssignableFrom(compCls) || val instanceof BinaryBuilderEnum[]) { writeArray(writer,
[ignite] branch master updated: IGNITE-12439 Warning about possible OOME if cache with too many partitions is created in a limited-size data region
This is an automated email from the ASF dual-hosted git repository. agura 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 3639f92 IGNITE-12439 Warning about possible OOME if cache with too many partitions is created in a limited-size data region 3639f92 is described below commit 3639f92c7d3a50197ce90805215d63a52a9cda4f Author: Sergey Chugunov AuthorDate: Thu Jan 23 13:50:21 2020 +0300 IGNITE-12439 Warning about possible OOME if cache with too many partitions is created in a limited-size data region Signed-off-by: Andrey Gura --- .../affinity/IdealAffinityAssignment.java | 2 +- .../cache/CacheAffinitySharedManager.java | 116 .../processors/cache/CacheGroupMetricsImpl.java| 19 ++ .../GridCacheDatabaseSharedManager.java| 2 + .../cache/persistence/GridCacheOffheapManager.java | 8 +- .../cache/persistence/pagemem/PageMemoryEx.java| 13 + .../cache/persistence/pagemem/PageMemoryImpl.java | 20 ++ .../apache/ignite/internal/util/IgniteUtils.java | 14 +- .../cache/CacheDataRegionConfigurationTest.java| 305 + .../processors/cache/CacheGroupMetricsTest.java| 31 +++ .../ignite/testframework/ListeningTestLogger.java | 13 + 11 files changed, 540 insertions(+), 3 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/IdealAffinityAssignment.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/IdealAffinityAssignment.java index c930ec5..58fb341 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/IdealAffinityAssignment.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/IdealAffinityAssignment.java @@ -90,7 +90,7 @@ public class IdealAffinityAssignment { * @param nodes Nodes. * @param assignment Assignment. */ -private static Map> calculatePrimaries( +public static Map> calculatePrimaries( @Nullable List nodes, List> assignment ) { diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java index 2d8ce7c..46ca65f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java @@ -18,6 +18,7 @@ package org.apache.ignite.internal.processors.cache; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -26,6 +27,7 @@ import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; @@ -38,6 +40,8 @@ import org.apache.ignite.IgniteSystemProperties; import org.apache.ignite.cache.affinity.AffinityFunction; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.configuration.CacheConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.NearCacheConfiguration; import org.apache.ignite.events.DiscoveryEvent; import org.apache.ignite.events.Event; @@ -110,6 +114,9 @@ public class CacheAffinitySharedManager extends GridCacheSharedManagerAdap /** Affinity information for all started caches (initialized on coordinator). */ private ConcurrentMap grpHolders = new ConcurrentHashMap<>(); +/** */ +private CacheMemoryOverheadValidator validator = new CacheMemoryOverheadValidator(); + /** Topology version which requires affinity re-calculation (set from discovery thread). */ private AffinityTopologyVersion lastAffVer; @@ -1023,6 +1030,8 @@ public class CacheAffinitySharedManager extends GridCacheSharedManagerAdap fut.timeBag().finishLocalStage("Affinity initialization on cache group start " + "[grp=" + grpDesc.cacheOrGroupName() + "]"); +validator.validateCacheGroup(grpDesc); + return null; } ); @@ -1903,6 +1912,8 @@ public class CacheAffinitySharedManager extends GridCacheSharedManagerAdap fut.timeBag().finishLocalStage("Affinity centralized initialization (crd) " + "[grp=" + desc.cacheOrGroupName() + ", crd=" + crd + "]"); + +validator.validateCacheGroup(desc); } }); @@ -2868,4 +2879,109 @@ public class CacheAffinitySharedManager extends GridCacheSharedManagerAdap
[ignite] branch ignite-2.8 updated (2385cbb -> b5181d1)
This is an automated email from the ASF dual-hosted git repository. mmuzaf pushed a change to branch ignite-2.8 in repository https://gitbox.apache.org/repos/asf/ignite.git. from 2385cbb IGNITE-8641: Spring data example now uses its own xml config (#7280) add b5181d1 IGNITE-12547 Replace array of AtomicLong with AtomicLongArray in free list - Fixes #7267. No new revisions were added by this update. Summary of changes: .../persistence/freelist/AbstractFreeList.java | 8 +-- .../cache/persistence/freelist/PagesList.java | 68 +- .../db/wal/WalRecoveryTxLogicalRecordsTest.java| 18 +++--- .../persistence/freelist/FreeListCachingTest.java | 30 +- 4 files changed, 83 insertions(+), 41 deletions(-)