You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2017/02/15 10:45:14 UTC
[49/50] [abbrv] ignite git commit: Megre 2.0
Megre 2.0
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1748e226
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1748e226
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1748e226
Branch: refs/heads/ignite-3477-merge2.0
Commit: 1748e226d4322b90c7a50d52e53e2e16119c8086
Parents: db548dc 85b08c5
Author: sboikov <sb...@gridgain.com>
Authored: Wed Feb 15 13:42:00 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Feb 15 13:42:00 2017 +0300
----------------------------------------------------------------------
.gitignore | 2 +-
DEVNOTES.txt | 3 +
NOTICE | 2 +-
assembly/LICENSE_FABRIC | 35 +-
assembly/LICENSE_HADOOP | 17 +-
assembly/NOTICE_FABRIC | 2 +-
assembly/NOTICE_HADOOP | 2 +-
assembly/dependencies-fabric-lgpl.xml | 1 +
assembly/dependencies-fabric.xml | 1 +
examples/schema-import/bin/h2-server.bat | 2 +-
examples/schema-import/bin/h2-server.sh | 4 +-
.../schema-import/bin/schema-import.properties | 2 +-
.../src/main/resources/META-INF/licenses.txt.vm | 7 +-
.../tcp/ipfinder/s3/TcpDiscoveryS3IpFinder.java | 37 +-
.../TcpDiscoveryS3IpFinderAbstractSelfTest.java | 84 +++
...3IpFinderAwsCredentialsProviderSelfTest.java | 46 ++
...scoveryS3IpFinderAwsCredentialsSelfTest.java | 45 ++
.../s3/TcpDiscoveryS3IpFinderSelfTest.java | 79 ---
.../ignite/testsuites/IgniteS3TestSuite.java | 26 +-
.../stream/camel/IgniteCamelStreamerTest.java | 4 +-
.../cassandra/persistence/PojoKeyField.java | 2 +-
.../ClientAbstractMultiNodeSelfTest.java | 8 +-
...BinaryMarshallerInsertStatementSelfTest.java | 2 -
...cBinaryMarshallerMergeStatementSelfTest.java | 2 -
.../internal/jdbc2/JdbcMetadataSelfTest.java | 2 +-
.../ignite/jdbc/JdbcMetadataSelfTest.java | 4 +-
.../jdbc/suite/IgniteJdbcDriverTestSuite.java | 3 +-
.../ignite/codegen/MessageCodeGenerator.java | 2 +-
modules/core/src/main/java/META-INF/NOTICE | 2 +-
.../apache/ignite/IgniteSystemProperties.java | 14 +
.../apache/ignite/binary/BinaryRawReader.java | 13 +
.../apache/ignite/binary/BinaryRawWriter.java | 13 +
.../org/apache/ignite/binary/BinaryReader.java | 15 +
.../org/apache/ignite/binary/BinaryWriter.java | 15 +
.../org/apache/ignite/cache/QueryEntity.java | 22 +-
.../org/apache/ignite/cache/query/SqlQuery.java | 25 +
.../store/jdbc/CacheAbstractJdbcStore.java | 11 +-
.../store/jdbc/CacheJdbcBlobStoreFactory.java | 2 +-
.../store/jdbc/JdbcTypesDefaultTransformer.java | 19 +
.../cache/store/jdbc/JdbcTypesTransformer.java | 17 +
.../configuration/CacheConfiguration.java | 20 +-
.../configuration/IgniteConfiguration.java | 87 +--
.../apache/ignite/internal/GridComponent.java | 48 +-
.../internal/GridEventConsumeHandler.java | 5 +
.../ignite/internal/GridKernalContext.java | 23 +-
.../ignite/internal/GridKernalContextImpl.java | 47 +-
.../internal/GridMessageListenHandler.java | 5 +
.../internal/GridPerformanceSuggestions.java | 92 ---
.../ignite/internal/GridPluginComponent.java | 21 +-
.../org/apache/ignite/internal/GridTopic.java | 3 +
.../ignite/internal/IgniteComputeImpl.java | 2 +
.../apache/ignite/internal/IgniteKernal.java | 40 +-
.../ignite/internal/IgniteVersionUtils.java | 2 +-
.../org/apache/ignite/internal/IgnitionEx.java | 69 +-
.../ignite/internal/MappingStoreTask.java | 59 ++
.../internal/MarshallerContextAdapter.java | 211 ------
.../ignite/internal/MarshallerContextImpl.java | 690 +++++++++++++------
.../internal/MarshallerMappingFileStore.java | 174 +++++
.../ignite/internal/MarshallerPlatformIds.java | 30 +
.../internal/binary/BinaryClassDescriptor.java | 13 +
.../ignite/internal/binary/BinaryContext.java | 11 +-
.../internal/binary/BinaryEnumObjectImpl.java | 4 +-
.../internal/binary/BinaryFieldAccessor.java | 23 +
.../internal/binary/BinaryMarshaller.java | 1 -
.../binary/BinaryMetadataCollector.java | 11 +
.../internal/binary/BinaryObjectImpl.java | 9 +
.../binary/BinaryObjectOffheapImpl.java | 9 +
.../internal/binary/BinaryReaderExImpl.java | 58 ++
.../binary/BinarySerializedFieldComparator.java | 3 +
.../ignite/internal/binary/BinaryUtils.java | 130 +++-
.../ignite/internal/binary/BinaryWriteMode.java | 6 +
.../internal/binary/BinaryWriterExImpl.java | 80 ++-
.../internal/binary/GridBinaryMarshaller.java | 6 +
.../binary/builder/BinaryBuilderReader.java | 37 +
.../GridClientOptimizedMarshaller.java | 16 +-
.../impl/GridRouterCommandLineStartup.java | 4 +-
.../cluster/ClusterNodeLocalMapImpl.java | 1 -
.../internal/igfs/common/IgfsMarshaller.java | 4 +-
.../internal/jdbc2/JdbcSqlFieldsQuery.java | 1 -
.../ignite/internal/jdbc2/JdbcStatement.java | 2 -
.../internal/managers/GridManagerAdapter.java | 19 +-
.../managers/communication/GridIoManager.java | 6 +-
.../communication/GridIoMessageFactory.java | 12 +
.../managers/communication/GridIoPolicy.java | 10 +-
.../discovery/GridDiscoveryManager.java | 85 ++-
.../internal/mxbean/IgniteStandardMXBean.java | 12 +-
.../processors/GridProcessorAdapter.java | 21 +-
.../cache/CacheEvictableEntryImpl.java | 4 +-
.../processors/cache/CacheMetricsImpl.java | 6 +-
.../internal/processors/cache/CacheType.java | 8 +-
.../processors/cache/EntryGetResult.java | 65 ++
.../processors/cache/GridCacheAdapter.java | 195 +++---
.../cache/GridCacheAffinityManager.java | 60 +-
.../processors/cache/GridCacheAtomicFuture.java | 3 +-
.../processors/cache/GridCacheContext.java | 21 +-
.../cache/GridCacheDeploymentManager.java | 4 +-
.../processors/cache/GridCacheEntryEx.java | 40 +-
.../cache/GridCacheEvictionManager.java | 6 +-
.../processors/cache/GridCacheMapEntry.java | 130 +++-
.../GridCachePartitionExchangeManager.java | 2 +-
.../processors/cache/GridCacheProcessor.java | 372 ++++++----
.../processors/cache/GridCacheTtlManager.java | 3 +-
.../processors/cache/GridCacheUtils.java | 36 +-
.../processors/cache/IgniteCacheProxy.java | 3 +
.../processors/cache/QueryCursorImpl.java | 6 +-
.../processors/cache/ReaderArguments.java | 74 ++
.../cache/affinity/GridCacheAffinityImpl.java | 16 +-
.../binary/CacheObjectBinaryProcessorImpl.java | 2 +-
.../CacheDataStructuresManager.java | 2 +-
.../GridDistributedCacheAdapter.java | 16 +-
.../distributed/GridDistributedCacheEntry.java | 3 -
.../GridDistributedLockResponse.java | 1 -
.../dht/GridClientPartitionTopology.java | 1 -
.../dht/GridDhtAssignmentFetchFuture.java | 3 +-
.../distributed/dht/GridDhtCacheAdapter.java | 33 +-
.../distributed/dht/GridDhtCacheEntry.java | 2 +-
.../cache/distributed/dht/GridDhtGetFuture.java | 87 +--
.../distributed/dht/GridDhtGetSingleFuture.java | 79 +--
.../distributed/dht/GridDhtLocalPartition.java | 125 +++-
.../distributed/dht/GridDhtLockFuture.java | 35 +-
.../dht/GridDhtPartitionTopologyImpl.java | 6 +-
.../dht/GridDhtTransactionalCacheAdapter.java | 21 +-
.../distributed/dht/GridDhtTxFinishFuture.java | 8 +-
.../cache/distributed/dht/GridDhtTxLocal.java | 1 -
.../distributed/dht/GridDhtTxLocalAdapter.java | 10 +-
.../distributed/dht/GridDhtTxPrepareFuture.java | 13 +-
.../cache/distributed/dht/GridDhtTxRemote.java | 2 +-
.../distributed/dht/GridDhtUnlockRequest.java | 3 +-
.../dht/GridPartitionedGetFuture.java | 13 +-
.../dht/GridPartitionedSingleGetFuture.java | 14 +-
.../GridDhtAtomicAbstractUpdateFuture.java | 2 +-
.../dht/atomic/GridDhtAtomicCache.java | 34 +-
.../atomic/GridNearAtomicFullUpdateRequest.java | 1 -
.../GridNearAtomicSingleUpdateFuture.java | 2 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 4 +-
.../dht/colocated/GridDhtColocatedCache.java | 26 +-
.../colocated/GridDhtColocatedLockFuture.java | 64 +-
.../dht/preloader/GridDhtForceKeysFuture.java | 8 +-
.../dht/preloader/GridDhtPartitionDemander.java | 16 +-
.../dht/preloader/GridDhtPartitionMap2.java | 3 +-
.../dht/preloader/GridDhtPartitionSupplier.java | 2 +-
.../GridDhtPartitionsExchangeFuture.java | 51 +-
.../dht/preloader/GridDhtPreloader.java | 4 +-
.../distributed/near/GridNearAtomicCache.java | 3 +-
.../distributed/near/GridNearCacheEntry.java | 6 +-
.../distributed/near/GridNearGetFuture.java | 31 +-
.../distributed/near/GridNearGetRequest.java | 29 +-
.../distributed/near/GridNearLockFuture.java | 9 +-
.../distributed/near/GridNearLockRequest.java | 81 ++-
...arOptimisticSerializableTxPrepareFuture.java | 4 +-
.../near/GridNearOptimisticTxPrepareFuture.java | 13 +-
...ridNearOptimisticTxPrepareFutureAdapter.java | 13 +
.../GridNearPessimisticTxPrepareFuture.java | 2 +-
.../near/GridNearSingleGetRequest.java | 57 +-
.../near/GridNearTransactionalCache.java | 8 +-
.../near/GridNearTxFinishFuture.java | 15 +-
.../cache/distributed/near/GridNearTxLocal.java | 17 +-
.../processors/cache/local/GridLocalCache.java | 1 +
.../local/atomic/GridLocalAtomicCache.java | 12 +-
.../processors/cache/query/CacheQuery.java | 1 -
.../cache/query/GridCacheQueryAdapter.java | 8 +
.../cache/query/GridCacheQueryManager.java | 105 ++-
.../cache/query/GridCacheSqlQuery.java | 1 -
.../continuous/CacheContinuousQueryHandler.java | 101 ++-
.../continuous/CacheContinuousQueryManager.java | 2 +-
.../cache/transactions/IgniteTxAdapter.java | 4 +-
.../cache/transactions/IgniteTxEntry.java | 2 +-
.../cache/transactions/IgniteTxHandler.java | 16 +-
.../transactions/IgniteTxLocalAdapter.java | 101 ++-
.../cache/transactions/IgniteTxLocalEx.java | 3 +
.../cache/transactions/IgniteTxManager.java | 3 +-
.../cache/transactions/TxDeadlockDetection.java | 2 +-
.../cache/transactions/TxEntryValueHolder.java | 6 +-
.../IgniteCacheObjectProcessorImpl.java | 2 +-
.../processors/clock/GridClockServer.java | 4 +-
.../processors/cluster/ClusterProcessor.java | 53 +-
.../cluster/GridClusterStateProcessor.java | 22 +-
.../continuous/GridContinuousHandler.java | 5 +
.../continuous/GridContinuousProcessor.java | 147 ++--
.../datastreamer/DataStreamProcessor.java | 2 +-
.../datastreamer/DataStreamerImpl.java | 6 +-
.../datastructures/GridCacheSetImpl.java | 2 +-
.../datastructures/GridSetQueryPredicate.java | 2 +-
.../processors/hadoop/HadoopClasspathUtils.java | 4 +-
.../processors/hadoop/HadoopDefaultJobInfo.java | 5 +-
.../processors/hadoop/HadoopTaskContext.java | 10 +
.../internal/processors/igfs/IgfsFileImpl.java | 5 +-
.../internal/processors/igfs/IgfsProcessor.java | 2 +-
.../internal/processors/igfs/IgfsUtils.java | 105 +++
.../igfs/client/IgfsClientSizeCallable.java | 1 -
.../processors/job/GridJobProcessor.java | 2 +-
.../internal/processors/job/GridJobWorker.java | 4 +
.../marshaller/ClientRequestFuture.java | 183 +++++
.../GridMarshallerMappingProcessor.java | 363 ++++++++++
.../processors/marshaller/MappedName.java | 63 ++
.../marshaller/MappingAcceptedMessage.java | 71 ++
.../marshaller/MappingExchangeResult.java | 96 +++
.../marshaller/MappingProposedMessage.java | 137 ++++
.../marshaller/MappingUpdatedListener.java | 29 +
.../marshaller/MarshallerMappingItem.java | 99 +++
.../marshaller/MarshallerMappingTransport.java | 212 ++++++
.../MissingMappingRequestMessage.java | 146 ++++
.../MissingMappingResponseMessage.java | 169 +++++
.../internal/processors/odbc/IgniteTypes.java | 69 ++
.../processors/odbc/OdbcRequestHandler.java | 2 +
.../internal/processors/odbc/OdbcTypes.java | 131 ++++
.../internal/processors/odbc/OdbcUtils.java | 85 +++
.../processors/odbc/escape/OdbcEscapeUtils.java | 52 +-
.../platform/PlatformAbstractBootstrap.java | 3 +-
.../platform/PlatformConfigurationEx.java | 3 +-
.../platform/PlatformNoopProcessor.java | 5 +
.../platform/PlatformPluginExtension.java | 39 ++
.../processors/platform/PlatformProcessor.java | 7 +
.../platform/PlatformProcessorImpl.java | 71 +-
.../platform/cache/PlatformCache.java | 23 +-
.../cache/PlatformCacheEntryProcessorImpl.java | 6 +-
.../callback/PlatformCallbackGateway.java | 96 +++
.../platform/callback/PlatformCallbackOp.java | 18 +
.../plugin/PlatformPluginProcessor.java | 46 ++
.../cache/PlatformCachePluginConfiguration.java | 58 ++
.../cache/PlatformCachePluginProvider.java | 123 ++++
.../transactions/PlatformTransactions.java | 9 +
.../utils/PlatformConfigurationUtils.java | 51 +-
.../platform/utils/PlatformUtils.java | 58 +-
.../processors/plugin/CachePluginManager.java | 20 +-
.../plugin/IgnitePluginProcessor.java | 84 ++-
.../internal/processors/pool/PoolProcessor.java | 10 +-
.../processors/query/GridQueryIndexing.java | 4 +-
.../processors/query/GridQueryProcessor.java | 182 ++---
.../processors/query/GridQueryProperty.java | 21 +-
.../query/GridQueryTypeDescriptor.java | 7 +
.../resource/GridResourceProcessor.java | 1 +
.../handlers/cache/GridCacheCommandHandler.java | 2 -
.../string/GridRedisSetCommandHandler.java | 2 +-
.../service/GridServiceProcessor.java | 11 +-
.../processors/task/GridTaskWorker.java | 2 +-
.../suggestions/GridPerformanceSuggestions.java | 105 +++
.../JvmConfigurationSuggestions.java | 104 +++
.../suggestions/OsConfigurationSuggestions.java | 127 ++++
.../internal/suggestions/package-info.java | 21 +
.../internal/util/GridStripedSpinBusyLock.java | 2 +-
.../ignite/internal/util/HostAndPortRange.java | 2 +-
.../ignite/internal/util/IgniteUtils.java | 85 +--
.../ignite/internal/util/StripedExecutor.java | 2 +-
.../ignite/lang/IgniteProductVersion.java | 2 +-
.../ignite/marshaller/MarshallerContext.java | 23 +-
.../ignite/marshaller/jdk/JdkMarshaller.java | 1 -
.../optimized/OptimizedClassDescriptor.java | 2 +-
.../optimized/OptimizedMarshallerUtils.java | 16 +-
.../ignite/plugin/CachePluginContext.java | 5 +
.../apache/ignite/plugin/PluginProvider.java | 11 +-
.../communication/tcp/TcpCommunicationSpi.java | 18 +-
.../tcp/TcpCommunicationSpiMBean.java | 1 -
.../ignite/spi/discovery/DiscoveryDataBag.java | 299 ++++++++
.../spi/discovery/DiscoverySpiDataExchange.java | 15 +-
.../ignite/spi/discovery/tcp/ClientImpl.java | 120 +++-
.../ignite/spi/discovery/tcp/ServerImpl.java | 167 ++---
.../spi/discovery/tcp/TcpDiscoverySpi.java | 70 +-
.../tcp/internal/DiscoveryDataPacket.java | 345 ++++++++++
.../tcp/internal/TcpDiscoveryStatistics.java | 8 +-
.../messages/TcpDiscoveryAbstractMessage.java | 21 +
.../TcpDiscoveryJoinRequestMessage.java | 18 +-
.../TcpDiscoveryNodeAddFinishedMessage.java | 10 +-
.../messages/TcpDiscoveryNodeAddedMessage.java | 78 +--
modules/core/src/test/config/log4j-test.xml | 6 +
.../org.apache.ignite.plugin.PluginProvider | 1 +
.../CacheJdbcPojoStoreAbstractSelfTest.java | 21 +-
...eJdbcStoreAbstractMultithreadedSelfTest.java | 17 +-
.../ignite/cache/store/jdbc/model/Gender.java | 41 ++
.../ignite/cache/store/jdbc/model/Person.java | 31 +-
.../internal/ClusterGroupHostsSelfTest.java | 6 +-
.../ComputeJobCancelWithServiceSelfTest.java | 2 +-
.../ignite/internal/GridAffinitySelfTest.java | 2 +-
.../internal/GridContinuousTaskSelfTest.java | 83 ++-
.../GridEventStorageCheckAllEventsSelfTest.java | 2 +-
.../IgniteClientReconnectApiExceptionTest.java | 6 +-
...niteClientReconnectFailoverAbstractTest.java | 4 +-
.../MarshallerContextLockingSelfTest.java | 67 +-
.../binary/BinaryMarshallerSelfTest.java | 109 ++-
...GridBinaryMarshallerCtxDisabledSelfTest.java | 42 +-
.../GridDiscoveryManagerAliveCacheSelfTest.java | 3 +-
.../GridDiscoveryManagerAttributesSelfTest.java | 4 +-
.../cache/CacheAffinityCallSelfTest.java | 8 +-
.../cache/CacheConcurrentReadThroughTest.java | 184 +++++
.../cache/CacheDeferredDeleteQueueTest.java | 134 ++++
.../cache/CacheGetEntryAbstractTest.java | 2 +-
.../CacheSerializableTransactionsTest.java | 6 +-
.../CacheStartupInDeploymentModesTest.java | 7 +-
.../cache/CacheStopAndDestroySelfTest.java | 6 +-
.../cache/GridCacheAbstractFullApiSelfTest.java | 6 +-
.../cache/GridCacheEntryMemorySizeSelfTest.java | 8 +-
.../cache/GridCacheMvccPartitionedSelfTest.java | 48 +-
.../processors/cache/GridCacheMvccSelfTest.java | 208 +++---
.../processors/cache/GridCacheStopSelfTest.java | 4 +-
.../processors/cache/GridCacheTestEntryEx.java | 32 +-
.../cache/GridCacheUtilsSelfTest.java | 2 +-
...ProjectionForCachesOnDaemonNodeSelfTest.java | 8 +-
.../IgniteCacheConfigVariationsFullApiTest.java | 8 +-
.../cache/IgniteCachePeekModesAbstractTest.java | 4 +-
.../cache/IgniteCacheStoreCollectionTest.java | 1 -
.../cache/IgniteInternalCacheTypesTest.java | 11 -
...iteMarshallerCacheClassNameConflictTest.java | 277 ++++++++
...lerCacheClientRequestsMappingOnMissTest.java | 341 +++++++++
.../cache/IgniteSystemCacheOnClientTest.java | 23 +-
...gniteTopologyValidatorAbstractCacheTest.java | 6 +-
.../processors/cache/IgniteTxAbstractTest.java | 3 +-
.../cache/IgniteTxConfigCacheSelfTest.java | 2 +-
.../IgniteTxExceptionAbstractSelfTest.java | 3 +-
.../IgniteTxMultiThreadedAbstractTest.java | 4 +-
.../CacheKeepBinaryWithInterceptorTest.java | 1 -
.../GridBinaryCacheEntryMemorySizeSelfTest.java | 21 +-
...yAtomicEntryProcessorDeploymentSelfTest.java | 4 +-
...IgniteCacheAbstractExecutionContextTest.java | 2 -
...eAbstractDataStructuresFailoverSelfTest.java | 16 +-
...actQueueFailoverDataConsistencySelfTest.java | 2 +-
...CacheAtomicReferenceApiSelfAbstractTest.java | 60 +-
...idCacheAtomicStampedApiSelfAbstractTest.java | 59 ++
.../GridCacheQueueApiSelfAbstractTest.java | 58 ++
.../GridCacheSetAbstractSelfTest.java | 53 ++
.../IgniteAtomicLongApiAbstractSelfTest.java | 27 +
.../IgniteCountDownLatchAbstractSelfTest.java | 43 ++
.../IgniteLockAbstractSelfTest.java | 78 ++-
.../IgniteSemaphoreAbstractSelfTest.java | 52 +-
.../CacheGetFutureHangsSelfTest.java | 6 +-
.../CacheLateAffinityAssignmentTest.java | 2 +-
...ridCachePartitionNotLoadedEventSelfTest.java | 4 +-
...niteCacheClientNodeChangingTopologyTest.java | 20 +-
.../IgniteCacheSystemTransactionsSelfTest.java | 18 +-
...teSynchronizationModesMultithreadedTest.java | 8 +-
.../IgniteCacheCrossCacheTxFailoverTest.java | 6 +-
...ePrimaryNodeFailureRecoveryAbstractTest.java | 4 +-
...gniteCachePutRetryTransactionalSelfTest.java | 4 +-
...eAtomicInvalidPartitionHandlingSelfTest.java | 11 +-
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 4 +-
...achePartitionedMultiNodeFullApiSelfTest.java | 8 +-
.../near/GridNearCacheStoreUpdateTest.java | 466 +++++++++++++
.../GridNearOffheapCacheStoreUpdateTest.java | 35 +
.../GridCacheReplicatedNodeRestartSelfTest.java | 3 +-
.../GridCacheReplicatedPreloadSelfTest.java | 1 -
.../IgniteCacheExpiryPolicyAbstractTest.java | 2 +-
...eCacheExpiryPolicyWithStoreAbstractTest.java | 100 ++-
.../IgniteCacheTxExpiryPolicyWithStoreTest.java | 21 +
.../IgniteCacheQueryCacheDestroySelfTest.java | 142 ++++
.../cache/query/IndexingSpiQuerySelfTest.java | 69 +-
.../IndexingSpiQueryWithH2IndexingSelfTest.java | 36 +
...ContinuousQueryFailoverAbstractSelfTest.java | 6 +-
.../ClientReconnectContinuousQueryTest.java | 201 ++++++
...ridCacheContinuousQueryAbstractSelfTest.java | 2 +-
...dCacheContinuousQueryNodesFilteringTest.java | 2 +-
...IgniteCacheContinuousQueryReconnectTest.java | 12 +-
.../TxDeadlockDetectionNoHangsTest.java | 2 +-
.../transactions/TxDeadlockDetectionTest.java | 2 +-
.../TxOptimisticDeadlockDetectionTest.java | 2 +-
.../TxPessimisticDeadlockDetectionTest.java | 2 +-
...ComputeJobExecutionErrorToLogManualTest.java | 4 +-
.../datastreamer/DataStreamerImplSelfTest.java | 8 +-
.../datastreamer/DataStreamerTimeoutTest.java | 6 +-
.../processors/igfs/IgfsAbstractSelfTest.java | 32 +-
.../processors/igfs/IgfsFileInfoSelfTest.java | 4 +-
.../igfs/IgfsMetaManagerSelfTest.java | 3 +-
.../igfs/IgfsModeResolverSelfTest.java | 10 +-
.../processors/igfs/IgfsTaskSelfTest.java | 87 +--
.../igfs/benchmark/IgfsBenchmark.java | 4 +-
.../odbc/OdbcEscapeSequenceSelfTest.java | 131 ++++
.../cache/GridCacheCommandHandlerSelfTest.java | 1 -
...rviceDeploymentExceptionPropagationTest.java | 2 +-
.../GridServiceProcessorStopSelfTest.java | 2 +-
.../service/IgniteServiceReassignmentTest.java | 2 +-
.../internal/util/IgniteUtilsSelfTest.java | 71 +-
.../unsafe/GridOffheapSnapTreeSelfTest.java | 7 +-
.../lang/GridMetadataAwareAdapterSelfTest.java | 4 +-
.../marshaller/MarshallerContextSelfTest.java | 150 +++-
.../marshaller/MarshallerContextTestImpl.java | 33 +-
.../OptimizedMarshallerEnumSelfTest.java | 25 +-
.../p2p/GridP2PSameClassLoaderSelfTest.java | 14 +-
.../platform/PlatformComputeEchoTask.java | 12 +
.../platform/PlatformEventsWriteEventTask.java | 9 -
.../ignite/platform/PlatformExceptionTask.java | 78 +++
.../platform/plugin/PlatformTestPlugin.java | 27 +
.../plugin/PlatformTestPluginExtension.java | 51 ++
.../plugin/PlatformTestPluginProvider.java | 97 +++
.../plugin/PlatformTestPluginTarget.java | 90 +++
.../tcp/TcpCommunicationSpiDropNodesTest.java | 322 +++++++++
.../TcpCommunicationSpiFaultyClientTest.java | 265 +++++++
.../local/GridLocalDeploymentSpiSelfTest.java | 6 +-
.../discovery/AbstractDiscoverySelfTest.java | 7 +-
...lientDiscoverySpiFailureTimeoutSelfTest.java | 4 +-
.../spi/discovery/tcp/TcpDiscoverySelfTest.java | 111 ++-
.../TcpDiscoverySpiFailureTimeoutSelfTest.java | 14 +-
.../tcp/TcpDiscoverySpiStartStopSelfTest.java | 11 +-
.../startup/GridRandomCommandLineLoader.java | 2 +-
.../testframework/GridSpiTestContext.java | 5 +-
.../ignite/testframework/GridTestNode.java | 1 +
.../ignite/testframework/IgniteTestSuite.java | 2 +-
.../testframework/junits/GridAbstractTest.java | 15 +-
.../junits/spi/GridSpiAbstractTest.java | 9 +-
.../testsuites/IgniteBinaryBasicTestSuite.java | 5 +
.../IgniteCacheDataStructuresSelfTestSuite.java | 2 -
.../ignite/testsuites/IgniteCacheTestSuite.java | 2 +
.../testsuites/IgniteCacheTestSuite2.java | 7 +
...essagingConfigVariationFullApiTestSuite.java | 4 +-
.../IgniteSpiCommunicationSelfTestSuite.java | 5 +
.../IgniteSpiDiscoverySelfTestSuite.java | 2 +-
.../ignite/thread/IgniteThreadPoolSizeTest.java | 8 -
.../ignite/util/mbeans/GridMBeanSelfTest.java | 10 +-
.../CacheNoValueClassOnServerTestClient.java | 3 +-
.../CacheConfigurationP2PTestClient.java | 3 +-
.../gce/TcpDiscoveryGoogleStorageIpFinder.java | 4 +-
.../io/BytesWritablePartiallyRawComparator.java | 51 ++
.../hadoop/io/TextPartiallyRawComparator.java | 68 +-
.../hadoop/igfs/HadoopIgfsEndpoint.java | 4 +-
.../processors/hadoop/impl/HadoopUtils.java | 66 ++
.../HadoopBasicFileSystemFactoryDelegate.java | 2 +-
.../hadoop/impl/igfs/HadoopIgfsInProc.java | 40 +-
.../hadoop/impl/v1/HadoopV1MapTask.java | 89 ++-
.../hadoop/impl/v1/HadoopV1ReduceTask.java | 69 +-
.../hadoop/impl/v2/HadoopV2Context.java | 12 +-
.../hadoop/impl/v2/HadoopV2MapTask.java | 18 +-
.../hadoop/impl/v2/HadoopV2ReduceTask.java | 14 +
.../hadoop/impl/v2/HadoopV2TaskContext.java | 12 +-
.../hadoop/shuffle/HadoopShuffleJob.java | 7 -
.../shuffle/direct/HadoopDirectDataInput.java | 2 +-
.../taskexecutor/HadoopExecutorService.java | 6 +-
.../hadoop/taskexecutor/HadoopRunnableTask.java | 12 +-
.../child/HadoopChildProcessRunner.java | 10 +-
.../impl/HadoopAbstractMapReduceTest.java | 2 +
.../hadoop/impl/HadoopErrorSimulator.java | 12 +-
.../impl/HadoopMapReduceEmbeddedSelfTest.java | 6 +-
.../HadoopIgfs20FileSystemAbstractSelfTest.java | 3 +-
.../IgniteHadoopFileSystemClientSelfTest.java | 6 +-
.../query/h2/DmlStatementsProcessor.java | 69 +-
.../query/h2/GridH2ResultSetIterator.java | 3 +-
.../processors/query/h2/IgniteH2Indexing.java | 44 +-
.../query/h2/dml/UpdatePlanBuilder.java | 105 ++-
.../query/h2/opt/GridH2IndexBase.java | 23 +-
.../processors/query/h2/sql/DmlAstUtils.java | 2 +-
.../query/h2/twostep/GridMapQueryExecutor.java | 8 +-
.../h2/twostep/GridReduceQueryExecutor.java | 9 +-
.../query/h2/twostep/msg/GridH2Geometry.java | 2 +-
.../cache/BinarySerializationQuerySelfTest.java | 2 -
.../CacheRandomOperationsMultithreadedTest.java | 4 +-
...CacheScanPartitionQueryFallbackSelfTest.java | 2 +-
.../ClientReconnectAfterClusterRestartTest.java | 4 +-
.../GridCacheQueryIndexDisabledSelfTest.java | 20 +-
...niteCacheAbstractInsertSqlQuerySelfTest.java | 4 +
.../cache/IgniteCacheAbstractQuerySelfTest.java | 271 +++++++-
.../IgniteCacheAbstractSqlDmlQuerySelfTest.java | 2 +-
.../IgniteCacheInsertSqlQuerySelfTest.java | 22 +
...eLockPartitionOnAffinityRunAbstractTest.java | 1 -
...PartitionOnAffinityRunAtomicCacheOpTest.java | 11 +-
...niteCacheLockPartitionOnAffinityRunTest.java | 50 +-
...titionOnAffinityRunWithCollisionSpiTest.java | 10 +-
.../cache/IgniteCacheMergeSqlQuerySelfTest.java | 25 +-
.../cache/IgniteCacheOffheapEvictQueryTest.java | 4 +-
...niteCacheP2pUnmarshallingQueryErrorTest.java | 4 +-
.../IgniteCacheUpdateSqlQuerySelfTest.java | 63 +-
.../cache/QueryEntityCaseMismatchTest.java | 107 +++
...niteCacheDistributedQueryCancelSelfTest.java | 4 +-
.../IgniteCachePartitionedQuerySelfTest.java | 85 +++
.../IgniteCacheQueryNodeRestartSelfTest2.java | 4 +-
.../IgniteSqlEntryCacheModeAgnosticTest.java | 140 ++++
.../query/IgniteSqlQueryDedicatedPoolTest.java | 110 +++
.../query/IgniteSqlSchemaIndexingTest.java | 17 +-
.../query/IgniteSqlSplitterSelfTest.java | 4 +-
.../h2/GridIndexingSpiAbstractSelfTest.java | 38 +-
.../query/h2/sql/GridQueryParsingTest.java | 4 -
.../IgniteCacheQuerySelfTestSuite.java | 8 +
.../IgniteCacheQuerySelfTestSuite3.java | 2 +
.../apache/ignite/stream/jms11/JmsStreamer.java | 4 +-
.../ignite/stream/kafka/KafkaStreamer.java | 6 +-
.../ignite/stream/kafka/TestKafkaBroker.java | 2 +-
.../connect/IgniteSourceConnectorTest.java | 2 +-
.../stream/mqtt/IgniteMqttStreamerTest.java | 4 +-
.../BundleDelegatingClassLoader.java | 4 +-
.../classloaders/ContainerSweepClassLoader.java | 4 +-
modules/platforms/cpp/binary/Makefile.am | 3 +
.../platforms/cpp/binary/include/Makefile.am | 6 +
.../cpp/binary/include/ignite/binary/binary.h | 15 +-
.../binary/binary_array_identity_resolver.h | 64 ++
.../ignite/binary/binary_identity_resolver.h | 61 ++
.../include/ignite/binary/binary_object.h | 92 +++
.../binary/include/ignite/binary/binary_type.h | 24 +-
.../include/ignite/impl/binary/binary_common.h | 6 +
.../ignite/impl/binary/binary_object_header.h | 257 +++++++
.../ignite/impl/binary/binary_object_impl.h | 162 +++++
.../ignite/impl/binary/binary_reader_impl.h | 29 +-
.../include/ignite/impl/binary/binary_schema.h | 2 +-
.../ignite/impl/binary/binary_type_impl.h | 149 ++++
.../ignite/impl/binary/binary_type_snapshot.h | 18 +-
.../ignite/impl/binary/binary_type_updater.h | 2 +-
.../include/ignite/impl/binary/binary_utils.h | 236 ++-----
.../ignite/impl/binary/binary_writer_impl.h | 11 +-
.../ignite/impl/interop/interop_output_stream.h | 10 +-
.../cpp/binary/project/vs/binary.vcxproj | 9 +
.../binary/project/vs/binary.vcxproj.filters | 27 +
.../binary/binary_array_identity_resolver.cpp | 42 ++
.../cpp/binary/src/binary/binary_type.cpp | 4 +-
.../src/impl/binary/binary_object_header.cpp | 63 ++
.../src/impl/binary/binary_object_impl.cpp | 107 +++
.../src/impl/binary/binary_type_manager.cpp | 14 +-
.../cpp/binary/src/impl/binary/binary_utils.cpp | 169 +++--
.../src/impl/binary/binary_writer_impl.cpp | 4 +-
.../src/impl/interop/interop_output_stream.cpp | 5 +
modules/platforms/cpp/common/Makefile.am | 6 +-
.../platforms/cpp/common/include/Makefile.am | 1 +
.../common/include/ignite/common/concurrent.h | 29 +-
.../include/ignite/common/platform_utils.h | 79 +++
.../cpp/common/include/ignite/common/utils.h | 249 +++++--
.../cpp/common/include/ignite/ignite_error.h | 2 +-
.../include/ignite/common/dynamic_load_os.h | 131 ++++
.../os/linux/src/common/dynamic_load_os.cpp | 90 +++
.../os/linux/src/common/platform_utils.cpp | 75 ++
.../cpp/common/os/linux/src/common/utils.cpp | 136 ----
.../win/include/ignite/common/dynamic_load_os.h | 133 ++++
.../os/win/src/common/dynamic_load_os.cpp | 115 ++++
.../common/os/win/src/common/platform_utils.cpp | 80 +++
.../cpp/common/os/win/src/common/utils.cpp | 142 ----
.../cpp/common/project/vs/common.vcxproj | 6 +-
.../common/project/vs/common.vcxproj.filters | 18 +-
.../platforms/cpp/common/src/common/utils.cpp | 154 +++++
.../platforms/cpp/common/src/ignite_error.cpp | 68 +-
modules/platforms/cpp/core-test/Makefile.am | 10 +-
.../cpp/core-test/config/cache-identity.xml | 121 ++++
.../cpp/core-test/config/cache-query.xml | 10 -
.../core-test/include/ignite/binary_test_defs.h | 131 +++-
.../cpp/core-test/include/ignite/complex_type.h | 135 ++++
.../cpp/core-test/include/ignite/test_type.h | 186 +++++
.../cpp/core-test/include/ignite/test_utils.h | 63 ++
.../cpp/core-test/project/vs/core-test.vcxproj | 9 +
.../project/vs/core-test.vcxproj.filters | 35 +-
.../src/binary_identity_resolver_test.cpp | 522 ++++++++++++++
.../cpp/core-test/src/binary_object_test.cpp | 282 ++++++++
.../src/binary_reader_writer_raw_test.cpp | 23 +-
.../cpp/core-test/src/binary_session_test.cpp | 4 +-
.../cpp/core-test/src/cache_invoke_test.cpp | 553 +++++++++++++++
.../cpp/core-test/src/cache_query_test.cpp | 149 ++--
.../platforms/cpp/core-test/src/cache_test.cpp | 48 +-
.../cpp/core-test/src/cluster_test.cpp | 98 +++
.../cpp/core-test/src/continuous_query_test.cpp | 31 +-
.../cpp/core-test/src/ignition_test.cpp | 19 +-
.../cpp/core-test/src/interop_memory_test.cpp | 3 +-
.../cpp/core-test/src/interop_test.cpp | 42 +-
.../platforms/cpp/core-test/src/test_utils.cpp | 79 +++
.../cpp/core-test/src/transactions_test.cpp | 23 +-
modules/platforms/cpp/core/Makefile.am | 1 +
modules/platforms/cpp/core/include/Makefile.am | 8 +
.../cpp/core/include/ignite/cache/cache.h | 217 ++++--
.../ignite/cache/cache_entry_processor.h | 111 +++
.../include/ignite/cache/mutable_cache_entry.h | 176 +++++
.../include/ignite/cache/query/query_cursor.h | 2 +-
.../platforms/cpp/core/include/ignite/ignite.h | 18 +
.../cpp/core/include/ignite/ignite_binding.h | 119 ++++
.../include/ignite/ignite_binding_context.h | 88 +++
.../core/include/ignite/ignite_configuration.h | 2 -
.../impl/binary/binary_type_updater_impl.h | 2 +-
.../impl/cache/cache_entry_processor_holder.h | 282 ++++++++
.../core/include/ignite/impl/cache/cache_impl.h | 71 +-
.../ignite/impl/cluster/cluster_group_impl.h | 77 +++
.../include/ignite/impl/ignite_binding_impl.h | 121 ++++
.../include/ignite/impl/ignite_environment.h | 61 +-
.../cpp/core/include/ignite/impl/ignite_impl.h | 50 +-
.../ignite/impl/interop/interop_target.h | 37 +-
.../core/include/ignite/impl/module_manager.h | 131 ++++
.../cpp/core/include/ignite/impl/operations.h | 62 +-
.../platforms/cpp/core/project/vs/core.vcxproj | 9 +
.../cpp/core/project/vs/core.vcxproj.filters | 30 +
modules/platforms/cpp/core/src/ignite.cpp | 12 +-
modules/platforms/cpp/core/src/ignition.cpp | 343 +++++----
.../impl/binary/binary_type_updater_impl.cpp | 2 +-
.../cpp/core/src/impl/cache/cache_impl.cpp | 66 +-
.../continuous/continuous_query_handle_impl.cpp | 2 +-
.../core/src/impl/cache/query/query_impl.cpp | 8 +-
.../src/impl/cluster/cluster_group_impl.cpp | 64 ++
.../cpp/core/src/impl/ignite_environment.cpp | 92 ++-
.../platforms/cpp/core/src/impl/ignite_impl.cpp | 36 +-
.../core/src/impl/interop/interop_target.cpp | 49 +-
.../src/impl/transactions/transactions_impl.cpp | 14 +-
.../cpp/jni/include/ignite/jni/exports.h | 1 +
.../platforms/cpp/jni/include/ignite/jni/java.h | 4 +-
.../cpp/jni/include/ignite/jni/utils.h | 69 +-
.../platforms/cpp/jni/os/linux/src/utils.cpp | 221 +++---
modules/platforms/cpp/jni/os/win/src/utils.cpp | 227 +++---
modules/platforms/cpp/jni/project/vs/module.def | 1 +
modules/platforms/cpp/jni/src/exports.cpp | 4 +
modules/platforms/cpp/jni/src/java.cpp | 66 +-
modules/platforms/cpp/odbc-test/Makefile.am | 1 +
.../odbc-test/include/sql_test_suite_fixture.h | 13 +
.../cpp/odbc-test/include/test_utils.h | 51 +-
.../cpp/odbc-test/project/vs/odbc-test.vcxproj | 1 +
.../project/vs/odbc-test.vcxproj.filters | 3 +
.../cpp/odbc-test/src/api_robustness_test.cpp | 37 +-
.../src/application_data_buffer_test.cpp | 24 +-
.../cpp/odbc-test/src/queries_test.cpp | 71 +-
.../src/sql_aggregate_functions_test.cpp | 5 +-
.../src/sql_date_time_functions_test.cpp | 26 +-
.../src/sql_esc_convert_function_test.cpp | 160 +++++
.../src/sql_numeric_functions_test.cpp | 1 +
.../cpp/odbc-test/src/sql_outer_join_test.cpp | 1 +
.../odbc-test/src/sql_string_functions_test.cpp | 1 +
.../odbc-test/src/sql_test_suite_fixture.cpp | 88 ++-
.../cpp/odbc-test/src/sql_types_test.cpp | 131 +++-
.../platforms/cpp/odbc-test/src/test_utils.cpp | 60 +-
.../odbc/src/app/application_data_buffer.cpp | 66 +-
.../platforms/cpp/odbc/src/app/parameter.cpp | 4 +-
.../cpp/odbc/src/config/connection_info.cpp | 260 ++++++-
modules/platforms/cpp/odbc/src/utility.cpp | 17 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.AspNet.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Core.Tests.csproj | 9 +
.../Binary/BinaryBuilderSelfTest.cs | 20 +-
.../Binary/BinaryStructureTest.cs | 122 ++++
.../Cache/CacheAbstractTest.cs | 21 +
.../Cache/CacheAbstractTransactionalTest.cs | 339 +++++++++
.../Cache/CacheConfigurationTest.cs | 13 +-
.../Cache/Query/CacheLinqTest.cs | 96 +++
.../Cache/Store/CacheParallelLoadStoreTest.cs | 9 +-
.../Cache/Store/CacheStoreSessionTest.cs | 22 +-
.../Cache/Store/CacheStoreTest.cs | 363 ++++++----
.../Cache/Store/CacheTestStore.cs | 14 +
.../Cache/Store/NamedNodeCacheStoreTest.cs | 34 +
.../Compute/ComputeApiTest.cs | 66 +-
.../Apache.Ignite.Core.Tests/ExceptionsTest.cs | 66 ++
.../IgniteConfigurationSerializerTest.cs | 25 +-
.../IgniteConfigurationTest.cs | 13 +-
.../Plugin/Cache/CachePlugin.cs | 127 ++++
.../Plugin/Cache/CachePluginConfiguration.cs | 40 ++
.../Plugin/Cache/CachePluginTest.cs | 215 ++++++
.../Plugin/PluginTest.cs | 254 +++++++
.../Plugin/TestIgnitePlugin.cs | 39 ++
.../Plugin/TestIgnitePluginConfiguration.cs | 33 +
.../Plugin/TestIgnitePluginProvider.cs | 132 ++++
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Core.Schema.nuspec | 2 +-
.../Apache.Ignite.Core.csproj | 20 +
.../Apache.Ignite.Core.nuspec | 2 +-
.../Cache/Configuration/CacheConfiguration.cs | 34 +
.../Cache/Configuration/QueryEntity.cs | 2 +-
.../dotnet/Apache.Ignite.Core/Cache/ICache.cs | 4 +-
.../Apache.Ignite.Core/Common/JavaException.cs | 62 +-
.../Communication/Tcp/TcpCommunicationSpi.cs | 2 +-
.../Discovery/Tcp/TcpDiscoverySpi.cs | 2 +-
.../dotnet/Apache.Ignite.Core/IIgnite.cs | 10 +
.../Apache.Ignite.Core/IgniteConfiguration.cs | 26 +-
.../IgniteConfigurationSection.xsd | 42 ++
.../Impl/Binary/BinaryObjectBuilder.cs | 2 +-
.../Impl/Binary/BinaryReader.cs | 137 ++--
.../Impl/Binary/BinarySystemHandlers.cs | 14 +-
.../Impl/Binary/BinaryUtils.cs | 44 +-
.../Impl/Binary/BinaryWriter.cs | 6 +-
.../Apache.Ignite.Core/Impl/Cache/CacheImpl.cs | 104 ++-
.../Common/IgniteConfigurationXmlSerializer.cs | 3 +
.../Apache.Ignite.Core/Impl/ExceptionUtils.cs | 10 +-
.../dotnet/Apache.Ignite.Core/Impl/Ignite.cs | 26 +-
.../Apache.Ignite.Core/Impl/IgniteProxy.cs | 6 +
.../Apache.Ignite.Core/Impl/PlatformTarget.cs | 70 +-
.../Impl/Plugin/Cache/CachePluginContext.cs | 82 +++
.../Impl/Plugin/Cache/CachePluginProcessor.cs | 77 +++
.../Plugin/Cache/CachePluginProviderProxy.cs | 75 ++
.../Plugin/Cache/ICachePluginProviderProxy.cs | 52 ++
.../Impl/Plugin/IPluginProviderProxy.cs | 74 ++
.../Impl/Plugin/PluginContext.cs | 72 ++
.../Impl/Plugin/PluginProcessor.cs | 235 +++++++
.../Impl/Plugin/PluginProviderProxy.cs | 90 +++
.../Transactions/CacheTransactionManager.cs | 161 +++++
.../Impl/Transactions/Transaction.cs | 8 +
.../Impl/Transactions/TransactionImpl.cs | 13 +
.../Impl/Transactions/TransactionsImpl.cs | 10 +
.../Impl/Unmanaged/IgniteJniNativeMethods.cs | 3 +
.../Impl/Unmanaged/UnmanagedCallbackOp.cs | 8 +-
.../Impl/Unmanaged/UnmanagedCallbacks.cs | 88 ++-
.../Impl/Unmanaged/UnmanagedUtils.cs | 7 +
.../Interop/IPlatformTarget.cs | 91 +++
.../Cache/CachePluginProviderTypeAttribute.cs | 52 ++
.../Plugin/Cache/ICachePluginConfiguration.cs | 50 ++
.../Plugin/Cache/ICachePluginContext.cs | 47 ++
.../Plugin/Cache/ICachePluginProvider.cs | 52 ++
.../Plugin/IPluginConfiguration.cs | 48 ++
.../Apache.Ignite.Core/Plugin/IPluginContext.cs | 52 ++
.../Plugin/IPluginProvider.cs | 69 ++
.../Plugin/PluginNotFoundException.cs | 65 ++
.../Plugin/PluginProviderTypeAttribute.cs | 52 ++
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.EntityFramework.nuspec | 2 +-
.../Apache.Ignite.Linq.nuspec | 2 +-
.../Impl/CacheQueryExpressionVisitor.cs | 127 +++-
.../Impl/CacheQueryModelVisitor.cs | 3 +
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Log4Net.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.NLog.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite/Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Examples.csproj | 2 +
.../Datagrid/QueryDmlExample.cs | 162 +++++
.../Datagrid/TransactionExample.cs | 75 +-
.../Properties/AssemblyInfo.cs | 2 +-
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/pom.xml | 2 +-
.../spark/JavaStandaloneIgniteRDDSelfTest.java | 3 +-
.../util/spring/IgniteSpringHelperImpl.java | 8 +-
.../src/test/config/jdbc-pojo-store-builtin.xml | 8 +
.../src/test/config/jdbc-pojo-store-obj.xml | 8 +
.../ignite/internal/GridFactorySelfTest.java | 2 +-
.../internal/IgniteDynamicCacheConfigTest.java | 4 +-
.../GridSpringTransactionManagerSelfTest.java | 2 +-
.../ignite/tools/classgen/ClassesGenerator.java | 2 +-
.../twitter/IgniteTwitterStreamerTest.java | 4 +-
.../GridUriDeploymentFileProcessorSelfTest.java | 3 +-
.../scala/org/apache/ignite/visor/visor.scala | 115 ++--
.../commands/mem/VisorMemoryCommandSpec.scala | 33 +
modules/web-console/backend/app/agent.js | 56 +-
modules/web-console/backend/app/browser.js | 26 +
modules/web-console/backend/app/mongo.js | 49 +-
modules/web-console/backend/app/routes.js | 5 +-
.../web-console/backend/routes/activities.js | 52 ++
modules/web-console/backend/routes/admin.js | 2 +-
modules/web-console/backend/routes/agent.js | 10 +-
modules/web-console/backend/routes/public.js | 1 -
.../web-console/backend/services/activities.js | 136 ++++
modules/web-console/backend/services/users.js | 13 +-
modules/web-console/frontend/app/app.config.js | 9 +
modules/web-console/frontend/app/app.js | 29 +-
.../activities-user-dialog.controller.js | 60 ++
.../activities-user-dialog.jade | 36 +
.../components/activities-user-dialog/index.js | 36 +
.../form-field-datepicker.jade | 55 ++
.../form-field-datepicker.scss | 20 +
.../list-of-registered-users/index.js | 28 +
.../list-of-registered-users.categories.js | 30 +
.../list-of-registered-users.column-defs.js | 80 +++
.../list-of-registered-users.controller.js | 207 ++++++
.../list-of-registered-users.jade | 54 ++
.../ui-grid-header/ui-grid-header.jade | 27 +
.../ui-grid-header/ui-grid-header.scss | 84 +++
.../ui-grid-settings/ui-grid-settings.jade | 33 +
.../ui-grid-settings/ui-grid-settings.scss | 70 ++
.../app/core/activities/Activities.data.js | 39 ++
.../frontend/app/core/admin/Admin.data.js | 77 +++
modules/web-console/frontend/app/core/index.js | 25 +
modules/web-console/frontend/app/data/i18n.js | 38 +
.../ui-grid-settings/ui-grid-settings.jade | 33 -
.../ui-grid-settings/ui-grid-settings.scss | 38 -
.../app/filters/uiGridSubcategories.filter.js | 24 +
.../frontend/app/modules/Demo/Demo.module.js | 166 -----
.../app/modules/branding/branding.provider.js | 2 +-
.../generator/ConfigurationGenerator.js | 9 +-
.../frontend/app/modules/demo/Demo.module.js | 172 +++++
.../frontend/app/modules/sql/sql.controller.js | 14 +-
.../frontend/app/modules/sql/sql.module.js | 2 +-
.../frontend/app/modules/states/admin.state.js | 2 +-
.../configuration/summary/summary.controller.js | 6 +-
.../app/modules/user/AclRoute.provider.js | 31 +-
.../frontend/app/modules/user/Auth.service.js | 2 +-
.../frontend/app/modules/user/permissions.js | 2 +-
.../frontend/app/modules/user/user.module.js | 6 +-
modules/web-console/frontend/app/vendor.js | 1 +
.../frontend/controllers/admin-controller.js | 234 -------
.../frontend/controllers/domains-controller.js | 12 +-
modules/web-console/frontend/package.json | 3 +-
.../stylesheets/_font-awesome-custom.scss | 28 +
.../frontend/public/stylesheets/style.scss | 39 +-
.../frontend/public/stylesheets/variables.scss | 1 +
.../frontend/views/settings/admin.jade | 32 +-
modules/web-console/frontend/views/sql/sql.jade | 4 +-
.../views/templates/agent-download.jade | 2 +-
modules/web-console/web-agent/README.txt | 2 +-
.../ignite/console/agent/AgentLauncher.java | 259 ++++---
.../apache/ignite/console/agent/AgentUtils.java | 80 +++
.../console/agent/handlers/AbstractHandler.java | 110 ---
.../agent/handlers/AbstractListener.java | 104 +++
.../console/agent/handlers/DatabaseHandler.java | 298 --------
.../agent/handlers/DatabaseListener.java | 316 +++++++++
.../console/agent/handlers/RestHandler.java | 276 --------
.../console/agent/handlers/RestListener.java | 280 ++++++++
.../ignite/console/demo/AgentClusterDemo.java | 472 +------------
.../ignite/console/demo/AgentDemoUtils.java | 79 +++
.../demo/service/DemoCachesLoadService.java | 456 ++++++++++++
.../service/DemoRandomCacheLoadService.java | 120 ++++
.../service/DemoServiceClusterSingleton.java | 41 ++
.../demo/service/DemoServiceKeyAffinity.java | 41 ++
.../service/DemoServiceMultipleInstances.java | 41 ++
.../demo/service/DemoServiceNodeSingleton.java | 41 ++
.../ignite/cache/websession/WebSessionV2.java | 2 +-
.../internal/websession/WebSessionSelfTest.java | 6 +-
modules/yardstick/DEVNOTES-standalone.txt | 15 +
modules/yardstick/DEVNOTES.txt | 20 +
modules/yardstick/README.txt | 117 +++-
.../config/benchmark-sample.properties | 62 ++
modules/yardstick/pom-standalone.xml | 209 ++++++
modules/yardstick/pom.xml | 14 +-
.../cache/IgnitePutRemoveBenchmark.java | 42 ++
.../cache/IgnitePutRemoveTxBenchmark.java | 30 +
.../cache/IgnitePutValue8Benchmark.java | 42 ++
.../apache/ignite/yarn/ApplicationMaster.java | 4 +-
.../org/apache/ignite/yarn/IgniteProvider.java | 4 +-
.../tcp/ipfinder/zk/ZookeeperIpFinderTest.java | 2 +-
parent/pom.xml | 2 +-
pom.xml | 96 ++-
802 files changed, 30200 insertions(+), 7567 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcMetadataSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcMetadataSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
index b229729,3f8b89f..ee665de
--- a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
+++ b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
@@@ -279,13 -282,9 +282,16 @@@ public final class IgniteSystemProperti
/** Maximum size for atomic cache queue delete history (default is 200 000 entries per partition). */
public static final String IGNITE_ATOMIC_CACHE_DELETE_HISTORY_SIZE = "IGNITE_ATOMIC_CACHE_DELETE_HISTORY_SIZE";
+ /** Ttl of removed cache entries (ms). */
+ public static final String IGNITE_CACHE_REMOVED_ENTRIES_TTL = "IGNITE_CACHE_REMOVED_ENTRIES_TTL";
+
+ /** Maximum amount of concurrent updates per system thread in atomic caches in case of PRIMARY_SYNC or FULL_ASYNC
+ * write synchronization mode. If this limit is exceeded then update will be performed with FULL_SYNC
+ * synchronization mode. If value is {@code 0} then limit is unbounded.
+ */
+ public static final String IGNITE_ATOMIC_CACHE_MAX_CONCURRENT_DHT_UPDATES =
+ "IGNITE_ATOMIC_CACHE_MAX_CONCURRENT_DHT_UPDATES";
+
/**
* Comma separated list of addresses in format "10.100.22.100:45000,10.100.22.101:45000".
* Makes sense only for {@link org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder}.
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridComponent.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/GridComponent.java
index 7bbe9e2,560d7f6..c91daae
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridComponent.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridComponent.java
@@@ -49,7 -49,7 +52,10 @@@ public interface GridComponent
CLUSTER_PROC,
/** */
- DISCOVERY_PROC
++ DISCOVERY_PROC,
++
++ /** */
+ MARSHALLER_PROC
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
index 3c5b158,937a6f9..074496c
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
@@@ -49,7 -49,9 +49,8 @@@ import org.apache.ignite.internal.proce
import org.apache.ignite.internal.processors.igfs.IgfsProcessorAdapter;
import org.apache.ignite.internal.processors.job.GridJobProcessor;
import org.apache.ignite.internal.processors.jobmetrics.GridJobMetricsProcessor;
+ import org.apache.ignite.internal.processors.marshaller.GridMarshallerMappingProcessor;
import org.apache.ignite.internal.processors.odbc.OdbcProcessor;
-import org.apache.ignite.internal.processors.offheap.GridOffHeapProcessor;
import org.apache.ignite.internal.processors.platform.PlatformProcessor;
import org.apache.ignite.internal.processors.plugin.IgnitePluginProcessor;
import org.apache.ignite.internal.processors.pool.PoolProcessor;
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
index fae9d9a,d80d53c..29b6ff9
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
@@@ -65,9 -65,12 +65,11 @@@ import org.apache.ignite.internal.proce
import org.apache.ignite.internal.processors.igfs.IgfsProcessorAdapter;
import org.apache.ignite.internal.processors.job.GridJobProcessor;
import org.apache.ignite.internal.processors.jobmetrics.GridJobMetricsProcessor;
+ import org.apache.ignite.internal.processors.marshaller.GridMarshallerMappingProcessor;
import org.apache.ignite.internal.processors.nodevalidation.DiscoveryNodeValidationProcessor;
import org.apache.ignite.internal.processors.odbc.OdbcProcessor;
-import org.apache.ignite.internal.processors.offheap.GridOffHeapProcessor;
import org.apache.ignite.internal.processors.platform.PlatformProcessor;
+ import org.apache.ignite.internal.processors.platform.plugin.PlatformPluginProcessor;
import org.apache.ignite.internal.processors.plugin.IgnitePluginProcessor;
import org.apache.ignite.internal.processors.pool.PoolProcessor;
import org.apache.ignite.internal.processors.port.GridPortProcessor;
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridPluginComponent.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index c71ab2c,750c316..ec17bb9
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@@ -122,8 -122,10 +123,9 @@@ import org.apache.ignite.internal.proce
import org.apache.ignite.internal.processors.nodevalidation.DiscoveryNodeValidationProcessor;
import org.apache.ignite.internal.processors.nodevalidation.OsDiscoveryNodeValidationProcessor;
import org.apache.ignite.internal.processors.odbc.OdbcProcessor;
-import org.apache.ignite.internal.processors.offheap.GridOffHeapProcessor;
import org.apache.ignite.internal.processors.platform.PlatformNoopProcessor;
import org.apache.ignite.internal.processors.platform.PlatformProcessor;
+ import org.apache.ignite.internal.processors.platform.plugin.PlatformPluginProcessor;
import org.apache.ignite.internal.processors.plugin.IgnitePluginProcessor;
import org.apache.ignite.internal.processors.pool.PoolProcessor;
import org.apache.ignite.internal.processors.port.GridPortProcessor;
@@@ -881,44 -896,40 +892,49 @@@ public class IgniteKernal implements Ig
// Start processors before discovery manager, so they will
// be able to start receiving messages once discovery completes.
- startProcessor(createComponent(DiscoveryNodeValidationProcessor.class, ctx));
- startProcessor(new GridClockSyncProcessor(ctx));
- startProcessor(new GridAffinityProcessor(ctx));
- startProcessor(createComponent(GridSegmentationProcessor.class, ctx));
- startProcessor(createComponent(IgniteCacheObjectProcessor.class, ctx));
- startProcessor(new GridCacheProcessor(ctx));
- startProcessor(new GridQueryProcessor(ctx));
- startProcessor(new OdbcProcessor(ctx));
- startProcessor(new GridServiceProcessor(ctx));
- startProcessor(new GridTaskSessionProcessor(ctx));
- startProcessor(new GridJobProcessor(ctx));
- startProcessor(new GridTaskProcessor(ctx));
- startProcessor((GridProcessor)SCHEDULE.createOptional(ctx));
- startProcessor(new GridRestProcessor(ctx));
- startProcessor(new DataStreamProcessor(ctx));
- startProcessor((GridProcessor)IGFS.create(ctx, F.isEmpty(cfg.getFileSystemConfiguration())));
- startProcessor(new GridContinuousProcessor(ctx));
- startProcessor(createHadoopComponent());
- startProcessor(new DataStructuresProcessor(ctx));
- startProcessor(createComponent(PlatformProcessor.class, ctx));
- startProcessor(new GridMarshallerMappingProcessor(ctx));
+ try {
+ startProcessor(createComponent(DiscoveryNodeValidationProcessor.class, ctx));
+ startProcessor(new GridClockSyncProcessor(ctx));
+ startProcessor(new GridAffinityProcessor(ctx));
+ startProcessor(createComponent(GridSegmentationProcessor.class, ctx));
+ startProcessor(createComponent(IgniteCacheObjectProcessor.class, ctx));
+ startProcessor(new GridCacheProcessor(ctx));
+ startProcessor(new GridClusterStateProcessor(ctx));
+ startProcessor(new GridQueryProcessor(ctx));
+ startProcessor(new OdbcProcessor(ctx));
+ startProcessor(new GridServiceProcessor(ctx));
+ startProcessor(new GridTaskSessionProcessor(ctx));
+ startProcessor(new GridJobProcessor(ctx));
+ startProcessor(new GridTaskProcessor(ctx));
+ startProcessor((GridProcessor)SCHEDULE.createOptional(ctx));
+ startProcessor(new GridRestProcessor(ctx));
+ startProcessor(new DataStreamProcessor(ctx));
+ startProcessor((GridProcessor)IGFS.create(ctx, F.isEmpty(cfg.getFileSystemConfiguration())));
+ startProcessor(new GridContinuousProcessor(ctx));
+ startProcessor(createHadoopComponent());
+ startProcessor(new DataStructuresProcessor(ctx));
+ startProcessor(createComponent(PlatformProcessor.class, ctx));
++ startProcessor(new GridMarshallerMappingProcessor(ctx));
+
+ // Start plugins.
+ for (PluginProvider provider : ctx.plugins().allProviders()) {
+ ctx.add(new GridPluginComponent(provider));
+
+ provider.start(ctx.plugins().pluginContextForProvider(provider));
+ }
- // Start plugins.
- for (PluginProvider provider : ctx.plugins().allProviders()) {
- ctx.add(new GridPluginComponent(provider));
++ // Start platform plugins.
++ if (ctx.config().getPlatformConfiguration() != null)
++ startProcessor(new PlatformPluginProcessor(ctx));
+
- provider.start(ctx.plugins().pluginContextForProvider(provider));
+ fillNodeAttributes(clusterProc.updateNotifierEnabled());
}
+ catch (Throwable e) {
+ // Stop discovery spi to close tcp socket.
+ ctx.discovery().stop(true);
- // Start platform plugins.
- if (ctx.config().getPlatformConfiguration() != null)
- startProcessor(new PlatformPluginProcessor(ctx));
-
- fillNodeAttributes(clusterProc.updateNotifierEnabled());
+ throw e;
+ }
gw.writeLock();
@@@ -938,15 -949,17 +954,21 @@@
// Suggest configuration optimizations.
suggestOptimizations(cfg);
+ // Suggest JVM optimizations.
+ ctx.performance().addAll(JvmConfigurationSuggestions.getSuggestions());
+
+ // Suggest Operation System optimizations.
+ ctx.performance().addAll(OsConfigurationSuggestions.getSuggestions());
+
// Notify discovery manager the first to make sure that topology is discovered.
- ctx.discovery().onKernalStart();
+ ctx.discovery().onKernalStart(activeOnStart);
// Notify IO manager the second so further components can send and receive messages.
- ctx.io().onKernalStart();
+ ctx.io().onKernalStart(activeOnStart);
+
+ // Start plugins.
+ for (PluginProvider provider : ctx.plugins().allProviders())
+ provider.onIgniteStart();
// Callbacks.
for (GridComponent comp : ctx) {
@@@ -1983,11 -1988,9 +2004,9 @@@
List<GridComponent> comps = ctx.components();
- ctx.marshallerContext().onKernalStop();
-
// Callback component in reverse order while kernal is still functional
// if called in the same thread, at least.
- for (ListIterator<GridComponent> it = comps.listIterator(comps.size()); it.hasPrevious();) {
+ for (ListIterator<GridComponent> it = comps.listIterator(comps.size()); it.hasPrevious(); ) {
GridComponent comp = it.previous();
try {
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryEnumObjectImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectOffheapImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/GridProcessorAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheMetricsImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheMetricsImpl.java
index 60d42ea,753cca1..1613af7
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheMetricsImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheMetricsImpl.java
@@@ -215,9 -222,9 +215,9 @@@ public class CacheMetricsImpl implement
/** {@inheritDoc} */
@Override public long getOffHeapPrimaryEntriesCount() {
try {
- return cctx.swap().offheapEntriesCount(true, false, cctx.affinity().affinityTopologyVersion());
+ return cctx.offheap().entriesCount(true, false, cctx.affinity().affinityTopologyVersion());
}
- catch (IgniteCheckedException e) {
+ catch (IgniteCheckedException ignored) {
return 0;
}
}
@@@ -225,9 -232,9 +225,9 @@@
/** {@inheritDoc} */
@Override public long getOffHeapBackupEntriesCount() {
try {
- return cctx.swap().offheapEntriesCount(false, true, cctx.affinity().affinityTopologyVersion());
+ return cctx.offheap().entriesCount(false, true, cctx.affinity().affinityTopologyVersion());
}
- catch (IgniteCheckedException e) {
+ catch (IgniteCheckedException ignored) {
return 0;
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 1937a5f,4507c53..d094366
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@@ -506,9 -501,8 +506,8 @@@ public abstract class GridCacheAdapter<
@Override public final GridCacheProxyImpl<K, V> withExpiryPolicy(ExpiryPolicy plc) {
assert !CU.isUtilityCache(ctx.name());
assert !CU.isAtomicsCache(ctx.name());
- assert !CU.isMarshallerCache(ctx.name());
- CacheOperationContext opCtx = new CacheOperationContext(false, null, false, plc, false, null);
+ CacheOperationContext opCtx = new CacheOperationContext(false, null, false, plc, false, null, false);
return new GridCacheProxyImpl<>(ctx, this, opCtx);
}
@@@ -650,10 -646,10 +651,9 @@@
/*subj id*/null,
/*task name*/null,
/*deserialize binary*/false,
- /*skip values*/
+ /*skip values*/true,
/*can remap*/true,
- true,
- false);
- false
- );
++ /*needVer*/false);
}
/** {@inheritDoc} */
@@@ -679,11 -673,10 +679,10 @@@
/*subj id*/null,
/*task name*/null,
/*deserialize binary*/false,
+ opCtx != null && opCtx.recovery(),
- /*skip values*/
+ /*skip values*/true,
/*can remap*/true,
- true,
- false).chain(new CX1<IgniteInternalFuture<Map<K, V>>, Boolean>() {
- false
- ).chain(new CX1<IgniteInternalFuture<Map<K, V>>, Boolean>() {
++ /*need ver*/false).chain(new CX1<IgniteInternalFuture<Map<K, V>>, Boolean>() {
@Override public Boolean applyx(IgniteInternalFuture<Map<K, V>> fut) throws IgniteCheckedException {
Map<K, V> kvMap = fut.get();
@@@ -768,108 -764,92 +767,108 @@@
PeekModes modes = parsePeekModes(peekModes, false);
- try {
- KeyCacheObject cacheKey = ctx.toCacheKeyObject(key);
+ KeyCacheObject cacheKey = ctx.toCacheKeyObject(key);
+
+ CacheObject cacheVal = null;
+
+ if (!ctx.isLocal()) {
+ AffinityTopologyVersion topVer = ctx.affinity().affinityTopologyVersion();
- CacheObject cacheVal = null;
+ int part = ctx.affinity().partition(cacheKey);
- if (!ctx.isLocal()) {
- AffinityTopologyVersion topVer = ctx.affinity().affinityTopologyVersion();
+ boolean nearKey;
- int part = ctx.affinity().partition(cacheKey);
+ if (!(modes.near && modes.primary && modes.backup)) {
- boolean keyPrimary = ctx.affinity().primary(ctx.localNode(), part, topVer);
++ boolean keyPrimary = ctx.affinity().primaryByPartition(ctx.localNode(), part, topVer);
- boolean nearKey;
+ if (keyPrimary) {
+ if (!modes.primary)
+ return null;
- if (!(modes.near && modes.primary && modes.backup)) {
- boolean keyPrimary = ctx.affinity().primaryByPartition(ctx.localNode(), part, topVer);
+ nearKey = false;
+ }
+ else {
- boolean keyBackup = ctx.affinity().belongs(ctx.localNode(), part, topVer);
++ boolean keyBackup = ctx.affinity().partitionBelongs(ctx.localNode(), part, topVer);
- if (keyPrimary) {
- if (!modes.primary)
+ if (keyBackup) {
+ if (!modes.backup)
return null;
nearKey = false;
}
else {
- boolean keyBackup = ctx.affinity().partitionBelongs(ctx.localNode(), part, topVer);
-
- if (keyBackup) {
- if (!modes.backup)
- return null;
-
- nearKey = false;
- }
- else {
- if (!modes.near)
- return null;
+ if (!modes.near)
+ return null;
- nearKey = true;
+ nearKey = true;
- // Swap and offheap are disabled for near cache.
- modes.offheap = false;
- modes.swap = false;
- }
- }
- }
- else {
- nearKey = !ctx.affinity().partitionBelongs(ctx.localNode(), part, topVer);
-
- if (nearKey) {
// Swap and offheap are disabled for near cache.
modes.offheap = false;
- modes.swap = false;
}
}
+ }
+ else {
- nearKey = !ctx.affinity().belongs(ctx.localNode(), part, topVer);
++ nearKey = !ctx.affinity().partitionBelongs(ctx.localNode(), part, topVer);
- if (nearKey && !ctx.isNear())
- return null;
+ if (nearKey) {
+ // Swap and offheap are disabled for near cache.
+ modes.offheap = false;
+ }
+ }
- if (modes.heap) {
- GridCacheEntryEx e = nearKey ? peekEx(cacheKey) :
- (ctx.isNear() ? ctx.near().dht().peekEx(cacheKey) : peekEx(cacheKey));
+ if (nearKey && !ctx.isNear())
+ return null;
- if (e != null) {
- cacheVal = e.peek(modes.heap, modes.offheap, modes.swap, topVer, plc);
+ GridCacheEntryEx e;
+ GridCacheContext ctx0;
- modes.offheap = false;
- modes.swap = false;
- }
+ while (true) {
+ if (nearKey) {
+ ctx0 = context();
+ e = peekEx(key);
+ }
+ else {
+ ctx0 = ctx.isNear() ? ctx.near().dht().context() : ctx;
+ e = modes.offheap ? ctx0.cache().entryEx(key) : ctx0.cache().peekEx(key);
}
- if (modes.offheap || modes.swap) {
- GridCacheSwapManager swapMgr = ctx.isNear() ? ctx.near().dht().context().swap() : ctx.swap();
+ if (e != null) {
+ try {
+ cacheVal = e.peek(modes.heap, modes.offheap, topVer, plc);
+ }
+ catch (GridCacheEntryRemovedException ignore) {
+ if (log.isDebugEnabled())
+ log.debug("Got removed entry during 'peek': " + key);
- cacheVal = swapMgr.readValue(cacheKey, modes.offheap, modes.swap);
+ continue;
+ }
+ finally {
+ ctx0.evicts().touch(e, null);
+ }
}
+
+ break;
}
- else
- cacheVal = localCachePeek0(cacheKey, modes.heap, modes.offheap, modes.swap, plc);
+ }
+ else {
+ while (true) {
+ try {
+ cacheVal = localCachePeek0(cacheKey, modes.heap, modes.offheap, plc);
- Object val = ctx.unwrapBinaryIfNeeded(cacheVal, ctx.keepBinary(), false);
+ break;
+ }
+ catch (GridCacheEntryRemovedException ignore) {
+ if (log.isDebugEnabled())
+ log.debug("Got removed entry during 'peek': " + key);
- return (V)val;
+ // continue
+ }
+ }
}
- catch (GridCacheEntryRemovedException ignore) {
- if (log.isDebugEnabled())
- log.debug("Got removed entry during 'peek': " + key);
- return null;
- }
+ Object val = ctx.unwrapBinaryIfNeeded(cacheVal, ctx.keepBinary(), false);
+
+ return (V)val;
}
/**
@@@ -1338,11 -1307,10 +1337,10 @@@
/*subject id*/null,
taskName,
/*deserialize cache objects*/true,
+ opCtx != null && opCtx.recovery(),
- /*skip values*/
- /*can remap*/false,
- true,
+ /*skip values*/false,
+ /*can remap*/true,
- false
- ).get().get(key);
+ false).get().get(key);
}
/** {@inheritDoc} */
@@@ -1357,11 -1323,11 +1355,11 @@@
/*skip tx*/false,
null,
taskName,
-- true,
- false,
++ /*deserialize cache objects*/true,
+ opCtx != null && opCtx.recovery(),
- /*can remap*/false,
- true,
- false).chain(new CX1<IgniteInternalFuture<Map<K, V>>, V>() {
++ /*skip values*/false,
+ /*can remap*/true,
- false
- ).chain(new CX1<IgniteInternalFuture<Map<K, V>>, V>() {
++ /*need ver*/false).chain(new CX1<IgniteInternalFuture<Map<K, V>>, V>() {
@Override public V applyx(IgniteInternalFuture<Map<K, V>> e) throws IgniteCheckedException {
return e.get().get(key);
}
@@@ -1381,11 -1345,10 +1379,10 @@@
/*subject id*/null,
taskName,
/*deserialize cache objects*/true,
+ opCtx != null && opCtx.recovery(),
- /*skip values*/
+ /*skip values*/false,
/*can remap*/false,
- false,
- false).get().get(key);
- false
- ).get().get(key);
++ /*need ver*/false).get().get(key);
}
/** {@inheritDoc} */
@@@ -1404,11 -1365,10 +1401,11 @@@
/*skip tx*/true,
null,
taskName,
- !ctx.keepBinary(),
+ !(opCtx != null && opCtx.isKeepBinary()),
+ opCtx != null && opCtx.recovery(),
- /*skip values*/
- /*can remap*/false,
- true, false);
+ /*skip values*/false,
+ /*can remap*/true,
+ false);
}
/** {@inheritDoc} */
@@@ -1957,23 -1888,14 +1960,23 @@@
}
if (tx == null || tx.implicit()) {
- Map<KeyCacheObject, GridCacheVersion> misses = null;
- try {
- final AffinityTopologyVersion topVer = tx == null ?
- (canRemap ?
- ctx.affinity().affinityTopologyVersion() : ctx.shared().exchange().readyAffinityVersion()) :
- tx.topologyVersion();
++ Map<KeyCacheObject, EntryGetResult> misses = null;
+
+ final AffinityTopologyVersion topVer = tx == null ?
+ (canRemap ?
+ ctx.affinity().affinityTopologyVersion() : ctx.shared().exchange().readyAffinityVersion()) :
+ tx.topologyVersion();
+ try {
int keysSize = keys.size();
+ GridDhtTopologyFuture topFut = ctx.shared().exchange().lastFinishedFuture();
+
+ Throwable ex = topFut != null ? topFut.validateCache(ctx, recovery, /*read*/true, null, keys) : null;
+
+ if (ex != null)
+ return new GridFinishedFuture<>(ex);
+
final Map<K1, V1> map = keysSize == 1 ?
(Map<K1, V1>)new IgniteBiTuple<>() :
U.<K1, V1>newHashMap(keysSize);
@@@ -1992,33 -1918,55 +1995,52 @@@
}
try {
- T2<CacheObject, GridCacheVersion> res = entry.innerGetVersioned(
- null,
- null,
- /*update-metrics*/!skipVals,
- /*event*/!skipVals,
- subjId,
- null,
- taskName,
- expiry,
- !deserializeBinary);
-
- if (res == null) {
- if (storeEnabled) {
- GridCacheVersion ver = entry.version();
+ EntryGetResult res;
+
+ boolean evt = !skipVals;
+ boolean updateMetrics = !skipVals;
+
+ if (storeEnabled) {
- res = entry.innerGetAndReserveForLoad(ctx.isSwapOrOffheapEnabled(),
- updateMetrics,
++ res = entry.innerGetAndReserveForLoad(updateMetrics,
+ evt,
+ subjId,
+ taskName,
+ expiry,
+ !deserializeBinary,
+ readerArgs);
+ assert res != null;
+
+ if (res.value() == null) {
if (misses == null)
misses = new HashMap<>();
- misses.put(key, ver);
+ misses.put(key, res);
+
+ res = null;
}
- else
- ctx.evicts().touch(entry, topVer);
}
else {
+ res = entry.innerGetVersioned(
+ null,
+ null,
- ctx.isSwapOrOffheapEnabled(),
- /*unmarshal*/true,
+ updateMetrics,
+ evt,
+ subjId,
+ null,
+ taskName,
+ expiry,
+ !deserializeBinary,
+ readerArgs);
+
+ if (res == null)
+ ctx.evicts().touch(entry, topVer);
+ }
+
+ if (res != null) {
ctx.addResult(map,
key,
- res.get1(),
+ res.value(),
skipVals,
keepCacheObjects,
deserializeBinary,
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDeploymentManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index 26e4ed3,f26288f..5dffe6e
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@@ -305,9 -324,11 +306,9 @@@ public interface GridCacheEntryEx
* @throws IgniteCheckedException If loading value failed.
* @throws GridCacheEntryRemovedException If entry was removed.
*/
- @Nullable public T2<CacheObject, GridCacheVersion> innerGetVersioned(
+ public EntryGetResult innerGetVersioned(
@Nullable GridCacheVersion ver,
IgniteInternalTx tx,
- boolean readSwap,
- boolean unmarshal,
boolean updateMetrics,
boolean evt,
UUID subjId,
@@@ -318,6 -340,34 +320,32 @@@
throws IgniteCheckedException, GridCacheEntryRemovedException;
/**
- * @param readSwap Flag indicating whether to check swap memory.
+ * @param updateMetrics If {@code true} then metrics should be updated.
+ * @param evt Flag to signal event notification.
+ * @param subjId Subject ID initiated this read.
+ * @param taskName Task name.
+ * @param expiryPlc Expiry policy.
+ * @param keepBinary Keep binary flag.
+ * @param readerArgs Reader will be added if not null.
+ * @throws IgniteCheckedException If loading value failed.
+ * @throws GridCacheEntryRemovedException If entry was removed.
+ * @return Cached value, entry version and flag indicating if entry was reserved.
+ */
- public EntryGetResult innerGetAndReserveForLoad(boolean readSwap,
- boolean updateMetrics,
++ public EntryGetResult innerGetAndReserveForLoad(boolean updateMetrics,
+ boolean evt,
+ UUID subjId,
+ String taskName,
+ @Nullable IgniteCacheExpiryPolicy expiryPlc,
+ boolean keepBinary,
+ @Nullable ReaderArguments readerArgs) throws IgniteCheckedException, GridCacheEntryRemovedException;
+
+ /**
+ * @param ver Expected entry version.
+ * @throws IgniteCheckedException If failed.
+ */
+ public void clearReserveForLoad(GridCacheVersion ver) throws IgniteCheckedException;
+
+ /**
* Reloads entry from underlying storage.
*
* @return Reloaded value.
http://git-wip-us.apache.org/repos/asf/ignite/blob/1748e226/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
----------------------------------------------------------------------