Merge branch 'ignite-5578-1' into ignite-5578
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0cb1a92a Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0cb1a92a Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0cb1a92a Branch: refs/heads/ignite-5578 Commit: 0cb1a92a0055c689fb865616537d9a8ba2efa1e6 Parents: 2efd14f 5a38c46 Author: sboikov <[email protected]> Authored: Mon Jul 10 15:02:42 2017 +0300 Committer: sboikov <[email protected]> Committed: Mon Jul 10 15:02:42 2017 +0300 ---------------------------------------------------------------------- .../configuration/IgniteConfiguration.java | 15 +- .../PersistentStoreConfiguration.java | 24 ++ .../ignite/internal/pagemem/FullPageId.java | 32 +-- .../ignite/internal/pagemem/PageSupport.java | 36 +-- ...ishSnapshotOperationAckDiscoveryMessage.java | 84 ------- .../snapshot/SnapshotCheckParameters.java | 75 ------ .../pagemem/snapshot/SnapshotOperation.java | 235 ------------------- .../pagemem/snapshot/SnapshotOperationType.java | 49 ---- ...artSnapshotOperationAckDiscoveryMessage.java | 149 ------------ .../StartSnapshotOperationDiscoveryMessage.java | 192 --------------- .../pagemem/store/IgnitePageStoreManager.java | 40 ++-- .../delta/DataPageInsertFragmentRecord.java | 6 +- .../wal/record/delta/DataPageInsertRecord.java | 6 +- .../wal/record/delta/DataPageRemoveRecord.java | 6 +- .../delta/DataPageSetFreeListPageRecord.java | 6 +- .../wal/record/delta/DataPageUpdateRecord.java | 6 +- .../wal/record/delta/FixCountRecord.java | 6 +- .../record/delta/FixLeftmostChildRecord.java | 6 +- .../pagemem/wal/record/delta/FixRemoveId.java | 6 +- .../wal/record/delta/InitNewPageRecord.java | 6 +- .../wal/record/delta/InnerReplaceRecord.java | 6 +- .../pagemem/wal/record/delta/InsertRecord.java | 6 +- .../pagemem/wal/record/delta/MergeRecord.java | 6 +- .../wal/record/delta/MetaPageAddRootRecord.java | 6 +- .../wal/record/delta/MetaPageCutRootRecord.java | 6 +- .../wal/record/delta/MetaPageInitRecord.java | 6 +- .../delta/MetaPageInitRootInlineRecord.java | 6 +- .../record/delta/MetaPageInitRootRecord.java | 4 +- .../delta/MetaPageUpdateLastAllocatedIndex.java | 4 +- ...aPageUpdateLastSuccessfulFullSnapshotId.java | 4 +- .../MetaPageUpdateLastSuccessfulSnapshotId.java | 4 +- .../delta/MetaPageUpdateNextSnapshotId.java | 4 +- .../MetaPageUpdatePartitionDataRecord.java | 6 +- .../wal/record/delta/NewRootInitRecord.java | 6 +- .../wal/record/delta/PageDeltaRecord.java | 14 +- .../delta/PageListMetaResetCountRecord.java | 6 +- .../record/delta/PagesListAddPageRecord.java | 6 +- .../delta/PagesListInitNewPageRecord.java | 6 +- .../record/delta/PagesListRemovePageRecord.java | 2 +- .../record/delta/PagesListSetNextRecord.java | 6 +- .../delta/PagesListSetPreviousRecord.java | 6 +- .../record/delta/PartitionDestroyRecord.java | 20 +- .../record/delta/PartitionMetaStateRecord.java | 16 +- .../pagemem/wal/record/delta/RecycleRecord.java | 6 +- .../pagemem/wal/record/delta/RemoveRecord.java | 6 +- .../pagemem/wal/record/delta/ReplaceRecord.java | 6 +- .../record/delta/SplitExistingPageRecord.java | 6 +- .../record/delta/SplitForwardPageRecord.java | 6 +- .../record/delta/TrackingPageDeltaRecord.java | 6 +- .../GridCachePartitionExchangeManager.java | 149 +++++++----- .../processors/cache/GridCachePreloader.java | 8 +- .../cache/GridCachePreloaderAdapter.java | 4 +- .../processors/cache/GridCacheProcessor.java | 22 +- .../cache/GridCacheSharedContext.java | 6 +- .../dht/GridDhtPartitionTopologyImpl.java | 10 +- .../preloader/ForceRebalanceExchangeTask.java | 58 +++++ .../dht/preloader/GridDhtPartitionDemander.java | 22 +- .../preloader/GridDhtPartitionExchangeId.java | 61 ++++- .../GridDhtPartitionsExchangeFuture.java | 192 ++------------- .../dht/preloader/GridDhtPreloader.java | 33 ++- .../preloader/GridDhtPreloaderAssignments.java | 21 +- .../RebalanceReassignExchangeTask.java | 44 ++++ .../cache/persistence/DataStructure.java | 46 ++-- .../GridCacheDatabaseSharedManager.java | 41 ++-- .../persistence/GridCacheOffheapManager.java | 4 +- .../persistence/IgniteCacheSnapshotManager.java | 150 ------------ .../cache/persistence/MetadataStorage.java | 2 +- .../cache/persistence/file/FileIO.java | 154 ++++++++++++ .../cache/persistence/file/FileIODecorator.java | 98 ++++++++ .../cache/persistence/file/FileIOFactory.java | 45 ++++ .../cache/persistence/file/FilePageStore.java | 51 ++-- .../persistence/file/FilePageStoreManager.java | 38 +-- .../persistence/file/RandomAccessFileIO.java | 110 +++++++++ .../file/RandomAccessFileIOFactory.java | 42 ++++ .../persistence/freelist/FreeListImpl.java | 6 +- .../cache/persistence/freelist/PagesList.java | 36 +-- .../persistence/pagemem/FullPageIdTable.java | 54 ++--- .../cache/persistence/pagemem/PageMemoryEx.java | 4 +- .../persistence/pagemem/PageMemoryImpl.java | 72 +++--- .../snapshot/IgniteCacheSnapshotManager.java | 161 +++++++++++++ .../snapshot/SnapshotDiscoveryMessage.java | 33 +++ .../persistence/snapshot/SnapshotOperation.java | 44 ++++ .../cache/persistence/tree/BPlusTree.java | 16 +- .../wal/AbstractWalRecordsIterator.java | 22 +- .../cache/persistence/wal/FileInput.java | 40 ++-- .../wal/FileWriteAheadLogManager.java | 161 +++++++------ .../wal/reader/IgniteWalIteratorFactory.java | 13 +- .../wal/reader/StandaloneGridKernalContext.java | 15 +- .../reader/StandaloneIgnitePluginProcessor.java | 38 +++ .../reader/StandaloneWalRecordsIterator.java | 37 +-- .../wal/serializer/RecordV1Serializer.java | 76 +++--- .../datastructures/DataStructuresProcessor.java | 6 +- .../platform/cluster/PlatformClusterGroup.java | 39 ++- .../utils/PlatformConfigurationUtils.java | 8 +- .../resources/META-INF/classnames.properties | 5 - .../affinity/AffinityHistoryCleanupTest.java | 182 -------------- .../pagemem/impl/PageMemoryNoLoadSelfTest.java | 52 ++-- ...idAbstractCacheInterceptorRebalanceTest.java | 2 - .../cache/GridCacheDeploymentSelfTest.java | 7 +- .../IgniteCacheP2pUnmarshallingTxErrorTest.java | 22 +- ...ffinityAssignmentNodeJoinValidationTest.java | 46 +--- .../CacheLateAffinityAssignmentTest.java | 2 - ...CacheLoadingConcurrentGridStartSelfTest.java | 2 - ...idCachePartitionedPreloadEventsSelfTest.java | 143 ----------- ...LateAffDisabledMultiNodeFullApiSelfTest.java | 35 --- ...LateAffDisabledMultiNodeFullApiSelfTest.java | 34 --- ...gnitePdsRecoveryAfterFileCorruptionTest.java | 35 ++- .../db/IgnitePdsWholeClusterRestartTest.java | 1 - ...ckpointSimulationWithRealCpDisabledTest.java | 74 +++--- .../db/file/IgnitePdsEvictionTest.java | 16 +- .../db/wal/IgniteWalFlushFailoverTest.java | 195 +++++++++++++++ .../db/wal/IgniteWalRecoveryTest.java | 10 +- .../db/wal/crc/IgniteDataIntegrityTests.java | 10 +- .../db/wal/reader/IgniteWalReaderTest.java | 9 +- .../db/wal/reader/MockWalIteratorFactory.java | 8 +- .../pagemem/NoOpPageStoreManager.java | 22 +- .../GridActivationPartitionedCacheSuit.java | 2 - ...ContinuousQueryFailoverAbstractSelfTest.java | 2 - .../processors/igfs/IgfsStreamsSelfTest.java | 1 - .../loadtests/hashmap/GridCacheTestContext.java | 6 +- .../junits/GridTestKernalContext.java | 10 + .../IgniteCacheFullApiSelfTestSuite.java | 6 - .../testsuites/IgniteCacheTestSuite2.java | 2 - .../ignite/testsuites/IgnitePdsTestSuite2.java | 4 + .../Binary/BinaryFooterTest.cs | 32 +++ .../Cache/PersistentStoreTest.cs | 9 +- .../IgniteConfigurationSerializerTest.cs | 11 +- .../IgniteConfigurationTest.cs | 11 +- .../Apache.Ignite.Core.csproj | 2 + .../dotnet/Apache.Ignite.Core/IIgnite.cs | 9 + .../IgniteConfigurationSection.xsd | 15 ++ .../Impl/Cluster/ClusterGroupImpl.cs | 14 ++ .../dotnet/Apache.Ignite.Core/Impl/Ignite.cs | 7 + .../PersistentStore/PersistentStoreMetrics.cs | 88 +++++++ .../PersistentStore/IPersistentStoreMetrics.cs | 87 +++++++ .../PersistentStoreConfiguration.cs | 156 +++++++----- 136 files changed, 2418 insertions(+), 2437 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/0cb1a92a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java index 2bfb461,1021e03..ed166ec --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java @@@ -1787,13 -1781,27 +1781,33 @@@ public class GridCachePartitionExchange super(cctx.igniteInstanceName(), "partition-exchanger", GridCachePartitionExchangeManager.this.log); } + void checkExchangeCoalescing() { + for (CachePartitionExchangeWorkerTask task : futQ) { + + } + } + /** + * @param exchId Exchange ID. + */ + void forceReassign(GridDhtPartitionExchangeId exchId) { + if (!hasPendingExchange() && !busy) + futQ.add(new RebalanceReassignExchangeTask(exchId)); + } + + /** + * @param exchId Exchange ID. + * @return Rebalance future. + */ + IgniteInternalFuture<Boolean> forceRebalance(GridDhtPartitionExchangeId exchId) { + GridCompoundFuture<Boolean, Boolean> fut = new GridCompoundFuture<>(CU.boolReducer()); + + futQ.add(new ForceRebalanceExchangeTask(exchId, fut)); + + return fut; + } + + /** * @param exchFut Exchange future. */ void addExchangeFuture(GridDhtPartitionsExchangeFuture exchFut) {
