Merge branch 'ignite-sprint-7' of https://git-wip-us.apache.org/repos/asf/incubator-ignite into ignite-959-x
# Conflicts: # modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/7df4f8cb Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/7df4f8cb Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/7df4f8cb Branch: refs/heads/ignite-959-x Commit: 7df4f8cb063b4491e46cc64368dff5a83a3df200 Parents: 3f38513 d3783a1 Author: S.Vladykin <svlady...@gridgain.com> Authored: Wed Jul 1 12:52:32 2015 -0700 Committer: S.Vladykin <svlady...@gridgain.com> Committed: Wed Jul 1 12:52:32 2015 -0700 ---------------------------------------------------------------------- assembly/dependencies-fabric.xml | 1 + examples/pom.xml | 2 +- modules/aop/pom.xml | 2 +- modules/aws/pom.xml | 2 +- modules/clients/pom.xml | 2 +- .../ClientAbstractConnectivitySelfTest.java | 4 +- modules/cloud/pom.xml | 2 +- modules/codegen/pom.xml | 2 +- modules/core/pom.xml | 2 +- .../org/apache/ignite/cluster/ClusterGroup.java | 18 +- .../org/apache/ignite/cluster/ClusterNode.java | 2 + .../configuration/CacheConfiguration.java | 105 +-- .../configuration/NearCacheConfiguration.java | 10 +- .../ignite/internal/GridKernalContextImpl.java | 2 +- .../internal/cluster/ClusterGroupAdapter.java | 50 +- .../cluster/IgniteClusterAsyncImpl.java | 12 +- .../managers/communication/GridIoManager.java | 49 +- .../discovery/GridDiscoveryManager.java | 32 +- .../cache/GridCacheDeploymentManager.java | 10 +- .../GridCachePartitionExchangeManager.java | 6 +- .../processors/cache/GridCacheProcessor.java | 62 +- .../processors/cache/IgniteCacheFutureImpl.java | 42 + .../processors/cache/IgniteCacheProxy.java | 2 +- .../processors/clock/GridClockServer.java | 21 +- .../processors/rest/GridRestProcessor.java | 4 +- .../handlers/task/GridTaskCommandHandler.java | 12 +- .../processors/task/GridTaskWorker.java | 4 +- .../internal/util/GridConfigurationFinder.java | 55 +- .../ignite/internal/util/IgniteUtils.java | 6 +- .../internal/util/future/IgniteFutureImpl.java | 18 +- .../shmem/IpcSharedMemoryServerEndpoint.java | 10 +- .../util/nio/GridNioMessageTracker.java | 23 +- .../apache/ignite/internal/visor/VisorJob.java | 2 + .../internal/visor/log/VisorLogSearchTask.java | 2 +- .../visor/node/VisorNodeDataCollectorJob.java | 4 + .../visor/query/VisorQueryCleanupTask.java | 14 + .../util/VisorClusterGroupEmptyException.java | 37 + .../ignite/spi/discovery/tcp/ClientImpl.java | 151 ++-- .../ignite/spi/discovery/tcp/ServerImpl.java | 105 ++- .../spi/discovery/tcp/TcpDiscoverySpi.java | 3 +- .../TcpDiscoveryMulticastIpFinder.java | 74 +- .../core/src/main/resources/ignite.properties | 2 +- .../core/src/test/config/spark/spark-config.xml | 46 ++ modules/core/src/test/config/tests.properties | 6 +- .../internal/ClusterGroupAbstractTest.java | 777 ++++++++++++++++++ .../internal/ClusterGroupHostsSelfTest.java | 141 ++++ .../ignite/internal/ClusterGroupSelfTest.java | 251 ++++++ .../internal/GridDiscoveryEventSelfTest.java | 12 +- .../internal/GridProjectionAbstractTest.java | 784 ------------------- .../ignite/internal/GridProjectionSelfTest.java | 251 ------ .../apache/ignite/internal/GridSelfTest.java | 2 +- .../IgniteTopologyPrintFormatSelfTest.java | 289 +++++++ .../cache/GridCacheDaemonNodeStopSelfTest.java | 119 --- .../IgniteDaemonNodeMarshallerCacheTest.java | 192 +++++ ...achePartitionedMultiNodeFullApiSelfTest.java | 4 +- .../internal/util/IgniteUtilsSelfTest.java | 22 + .../GridP2PContinuousDeploymentSelfTest.java | 2 - .../tcp/TcpClientDiscoverySpiSelfTest.java | 265 ++++++- .../ignite/testsuites/IgniteBasicTestSuite.java | 7 +- .../testsuites/IgniteCacheTestSuite3.java | 1 - .../testsuites/IgniteKernalSelfTestSuite.java | 1 + modules/core/src/test/resources/helloworld.gar | Bin 6092 -> 0 bytes modules/core/src/test/resources/helloworld1.gar | Bin 6092 -> 0 bytes modules/core/src/test/resources/readme.txt | 6 - modules/docker/Dockerfile | 55 ++ modules/docker/README.txt | 11 + modules/docker/build_users_libs.sh | 39 + modules/docker/download_ignite.sh | 49 ++ modules/docker/execute.sh | 62 ++ modules/docker/run.sh | 34 + modules/extdata/p2p/pom.xml | 4 +- .../p2p/GridP2PContinuousDeploymentTask1.java | 2 +- modules/extdata/uri/META-INF/ignite.xml | 38 + .../extdata/uri/modules/uri-dependency/pom.xml | 42 + .../deployment/uri/tasks/GarHelloWorldBean.java | 60 ++ .../src/main/resources/gar-example.properties | 18 + modules/extdata/uri/pom.xml | 62 +- .../deployment/uri/tasks/GarHelloWorldTask.java | 81 ++ .../deployment/uri/tasks/gar-spring-bean.xml | 29 + modules/gce/pom.xml | 2 +- modules/geospatial/pom.xml | 2 +- modules/hadoop/pom.xml | 2 +- modules/hibernate/pom.xml | 2 +- modules/indexing/pom.xml | 2 +- modules/jcl/pom.xml | 2 +- modules/jta/pom.xml | 2 +- modules/log4j/pom.xml | 2 +- modules/mesos/pom.xml | 2 +- modules/rest-http/pom.xml | 2 +- modules/scalar-2.10/pom.xml | 2 +- modules/scalar/pom.xml | 2 +- modules/schedule/pom.xml | 2 +- modules/schema-import/pom.xml | 2 +- .../ignite/schema/model/PojoDescriptor.java | 2 + .../apache/ignite/schema/model/PojoField.java | 1 + .../parser/dialect/OracleMetadataDialect.java | 2 +- modules/slf4j/pom.xml | 2 +- modules/spark-2.10/pom.xml | 2 +- modules/spark/pom.xml | 2 +- .../org/apache/ignite/spark/IgniteContext.scala | 50 +- .../org/apache/ignite/spark/IgniteRddSpec.scala | 18 + modules/spring/pom.xml | 2 +- modules/ssh/pom.xml | 2 +- modules/tools/pom.xml | 2 +- modules/urideploy/pom.xml | 16 +- .../GridTaskUriDeploymentDeadlockSelfTest.java | 13 +- .../ignite/p2p/GridP2PDisabledSelfTest.java | 2 +- modules/visor-console-2.10/pom.xml | 2 +- modules/visor-console/pom.xml | 2 +- .../commands/cache/VisorCacheCommand.scala | 7 +- modules/visor-plugins/pom.xml | 2 +- modules/web/pom.xml | 2 +- modules/yardstick/pom.xml | 2 +- pom.xml | 14 +- scripts/git-patch-prop.sh | 2 +- 115 files changed, 3413 insertions(+), 1496 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7df4f8cb/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java index 1f32cf3,e2308f2..e73f51f --- a/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java +++ b/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java @@@ -1511,13 -1506,8 +1512,13 @@@ public class CacheConfiguration<K, V> e * @param typeMeta Collection of type metadata. * @return {@code this} for chaining. */ - public CacheConfiguration setTypeMetadata(Collection<CacheTypeMetadata> typeMeta) { + public CacheConfiguration<K, V> setTypeMetadata(Collection<CacheTypeMetadata> typeMeta) { - this.typeMeta = typeMeta; + if (this.typeMeta == null) + this.typeMeta = new ArrayList<>(typeMeta); + else if (indexedTypes != null) + this.typeMeta.addAll(typeMeta); + else + throw new CacheException("Type metadata can be set only once."); return this; } @@@ -1671,32 -1661,22 +1672,32 @@@ * @param indexedTypes Key and value type pairs. * @return {@code this} for chaining. */ - public CacheConfiguration setIndexedTypes(Class<?>... indexedTypes) { + public CacheConfiguration<K, V> setIndexedTypes(Class<?>... indexedTypes) { - A.ensure(indexedTypes == null || (indexedTypes.length & 1) == 0, + int len = indexedTypes.length; + + A.ensure(len > 0, "Array of indexed types can not be empty."); + A.ensure((len & 1) == 0, "Number of indexed types is expected to be even. Refer to method javadoc for details."); - if (indexedTypes != null) { - int len = indexedTypes.length; + if (this.indexedTypes != null) + throw new CacheException("Indexed types can be set only once."); + + Class<?>[] newIndexedTypes = new Class<?>[len]; - Class<?>[] newIndexedTypes = new Class<?>[len]; + for (int i = 0; i < len; i++) + newIndexedTypes[i] = U.box(indexedTypes[i]); - for (int i = 0; i < len; i++) - newIndexedTypes[i] = U.box(indexedTypes[i]); + if (typeMeta == null) + typeMeta = new ArrayList<>(); - this.indexedTypes = newIndexedTypes; + for (int i = 0; i < len; i += 2) { + Class<?> keyCls = newIndexedTypes[i]; + Class<?> valCls = newIndexedTypes[i + 1]; + + TypeDescriptor desc = processKeyAndValueClasses(keyCls, valCls); + + typeMeta.add(convert(desc)); } - else - this.indexedTypes = null; return this; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7df4f8cb/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java ----------------------------------------------------------------------