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 2015/12/07 11:54:42 UTC
[01/50] [abbrv] ignite git commit: Merge remote-tracking branch
'origin/ignite-1.5' into ignite-1.5_
Repository: ignite
Updated Branches:
refs/heads/master 357d79135 -> 3fbf3e954
Merge remote-tracking branch 'origin/ignite-1.5' into ignite-1.5_
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3d6973b4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3d6973b4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3d6973b4
Branch: refs/heads/master
Commit: 3d6973b403e2cfe44c31d590a14a738ad37552e7
Parents: 776af1a aee20d9
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Nov 30 17:33:09 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Nov 30 17:33:09 2015 +0300
----------------------------------------------------------------------
.../GridDeploymentPerVersionStore.java | 12 +-
.../distributed/dht/GridDhtLockFuture.java | 17 ++-
.../communication/tcp/TcpCommunicationSpi.java | 12 +-
...cheAbstractFullApiMultithreadedSelfTest.java | 9 +-
.../IgniteCacheStoreValueAbstractTest.java | 111 +++++++++++--------
.../cache/IgniteCacheTxPreloadNoWriteTest.java | 2 +-
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 3 +-
...eRebalancingUnmarshallingFailedSelfTest.java | 13 ++-
.../GridCacheLocalIsolatedNodesSelfTest.java | 6 +-
9 files changed, 116 insertions(+), 69 deletions(-)
----------------------------------------------------------------------
[24/50] [abbrv] ignite git commit: Javadoc and muted test.
Posted by sb...@apache.org.
Javadoc and muted test.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ae40e2de
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ae40e2de
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ae40e2de
Branch: refs/heads/master
Commit: ae40e2de81f34e42571c166d6240747323f8d545
Parents: e7298ad
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Thu Dec 3 09:53:36 2015 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Thu Dec 3 09:53:36 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/configuration/IgniteConfiguration.java | 4 ++--
.../cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java | 5 +++++
2 files changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ae40e2de/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
index ee9f92a..07fb3a8 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
@@ -1020,8 +1020,8 @@ public class IgniteConfiguration {
/**
* Should return an instance of marshaller to use in grid. If not provided,
- * {@link OptimizedMarshaller} will be used on Java HotSpot VM, and
- * {@link JdkMarshaller} will be used on other VMs.
+ * default marshaller implementation that allows to read object field values
+ * without deserialization will be used.
*
* @return Marshaller to use in grid.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/ae40e2de/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java
index 4da15aa..44f2811 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java
@@ -37,4 +37,9 @@ public class GridCacheMultinodeUpdateNearEnabledSelfTest extends GridCacheMultin
@Override protected CacheAtomicityMode atomicityMode() {
return TRANSACTIONAL;
}
+
+ /** {@inheritDoc} */
+ @Override public void testInvoke() throws Exception {
+ fail("https://issues.apache.org/jira/browse/IGNITE-809");
+ }
}
\ No newline at end of file
[21/50] [abbrv] ignite git commit: minor
Posted by sb...@apache.org.
minor
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/c4d29f98
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/c4d29f98
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/c4d29f98
Branch: refs/heads/master
Commit: c4d29f987939f114f54a0d2cbf5837e1066015d4
Parents: 3ac1504
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Wed Dec 2 18:02:05 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Wed Dec 2 18:02:05 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/portable/BinaryWriterExImpl.java | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/c4d29f98/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryWriterExImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryWriterExImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryWriterExImpl.java
index 95807ea..59632f1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryWriterExImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryWriterExImpl.java
@@ -317,7 +317,7 @@ public class BinaryWriterExImpl implements BinaryWriter, BinaryRawWriterEx, Obje
flags |= PortableUtils.FLAG_OFFSET_ONE_BYTE;
else if (offsetByteCnt == PortableUtils.OFFSET_2)
flags |= PortableUtils.FLAG_OFFSET_TWO_BYTES;
-
+
// Write raw offset if needed.
if (rawOffPos != 0) {
flags |= PortableUtils.FLAG_HAS_RAW;
@@ -1806,9 +1806,6 @@ public class BinaryWriterExImpl implements BinaryWriter, BinaryRawWriterEx, Obje
out.unsafeWriteByte(GridPortableMarshaller.HANDLE);
out.unsafeWriteInt(pos - old);
- if (obj.getClass().isArray())
- System.out.println("CASE!");
-
return true;
}
}
[26/50] [abbrv] ignite git commit: Merge remote-tracking branch
'origin/ignite-1.5' into ignite-1.5
Posted by sb...@apache.org.
Merge remote-tracking branch 'origin/ignite-1.5' into ignite-1.5
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9b60c75c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9b60c75c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9b60c75c
Branch: refs/heads/master
Commit: 9b60c75c62d2e352a4a65b7c5a0b17bc79499ba8
Parents: f770954 ae40e2d
Author: sboikov <sb...@gridgain.com>
Authored: Thu Dec 3 10:42:50 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Dec 3 10:42:50 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/configuration/IgniteConfiguration.java | 4 ++--
.../cache/GridCacheMultinodeUpdateNearEnabledSelfTest.java | 5 +++++
2 files changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
[08/50] [abbrv] ignite git commit: Merge remote-tracking branch
'origin/ignite-1.5' into ignite-1.5
Posted by sb...@apache.org.
Merge remote-tracking branch 'origin/ignite-1.5' into ignite-1.5
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b64100a3
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b64100a3
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b64100a3
Branch: refs/heads/master
Commit: b64100a32029723e5cbc94dd09fde24f78143cc9
Parents: 3492dea 9830300
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 12:19:47 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 12:19:47 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 2 ++
1 file changed, 2 insertions(+)
----------------------------------------------------------------------
[39/50] [abbrv] ignite git commit: IGNITE-1947 More info about why
query was not found in error message.
Posted by sb...@apache.org.
IGNITE-1947 More info about why query was not found in error message.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e6f6f407
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e6f6f407
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e6f6f407
Branch: refs/heads/master
Commit: e6f6f407ef4f0c3555fd80fe5ba328739d94e3f0
Parents: baab3d2
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Fri Dec 4 15:14:49 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Dec 4 15:14:49 2015 +0700
----------------------------------------------------------------------
.../processors/rest/handlers/query/QueryCommandHandler.java | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e6f6f407/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
index bb929a4..0c44077 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
@@ -443,14 +443,16 @@ public class QueryCommandHandler extends GridRestCommandHandlerAdapter {
if (qryCurIt == null)
return new GridRestResponse(GridRestResponse.STATUS_FAILED,
- "Failed to find query with ID: " + req.queryId());
+ "Failed to find query with ID: " + req.queryId() + ". " +
+ "Possible reasons: wrong query ID, no more data to fetch from query, query was closed by timeout" +
+ " or node where query was executed is not found.");
qryCurIt.lock();
try {
if (qryCurIt.timestamp() == -1)
return new GridRestResponse(GridRestResponse.STATUS_FAILED,
- "Query is closed by timeout. Restart query with ID: " + req.queryId());
+ "Query with ID: " + req.queryId() + " was closed by timeout");
qryCurIt.timestamp(U.currentTimeMillis());
[44/50] [abbrv] ignite git commit: IGNITE-2041 Fixed JDBC cache store
example. Reworked from deprecated code to new API and refactored code,
made it more simple. Fixed bug in store in case of cache configured
keepBinaryInStore(true). Added one more a
Posted by sb...@apache.org.
IGNITE-2041 Fixed JDBC cache store example.
Reworked from deprecated code to new API and refactored code, made it more simple.
Fixed bug in store in case of cache configured keepBinaryInStore(true).
Added one more auto cache store example: CacheBinaryAutoStoreExample.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/92ef7c7c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/92ef7c7c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/92ef7c7c
Branch: refs/heads/master
Commit: 92ef7c7ce8229130762b64082cc9455579a05247
Parents: 6a109eb
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Fri Dec 4 17:57:57 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Dec 4 17:57:57 2015 +0700
----------------------------------------------------------------------
examples/config/example-default.xml | 7 +
.../store/auto/CacheBinaryAutoStoreExample.java | 158 +++++++++++++++++++
.../datagrid/store/auto/package-info.java | 22 +++
.../store/auto/CacheAutoStoreExample.java | 93 +++++++++--
.../auto/CacheAutoStoreLoadDataExample.java | 85 ----------
.../datagrid/store/auto/CacheConfig.java | 81 ----------
.../datagrid/store/auto/DbH2ServerStartup.java | 79 ----------
.../ignite/examples/util/DbH2ServerStartup.java | 79 ++++++++++
.../ignite/examples/util/package-info.java | 22 +++
.../store/jdbc/CacheAbstractJdbcStore.java | 12 +-
.../cache/store/jdbc/CacheJdbcPojoStore.java | 9 ++
11 files changed, 390 insertions(+), 257 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/config/example-default.xml
----------------------------------------------------------------------
diff --git a/examples/config/example-default.xml b/examples/config/example-default.xml
index e6c359d..6bd6f16 100644
--- a/examples/config/example-default.xml
+++ b/examples/config/example-default.xml
@@ -28,6 +28,13 @@
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd">
+
+ <!-- Datasource for sample in-memory H2 database. -->
+ <bean id="h2-example-db" class="org.h2.jdbcx.JdbcDataSource">
+ <property name="URL" value="jdbc:h2:tcp://localhost/mem:ExampleDb" />
+ <property name="user" value="sa" />
+ </bean>
+
<bean abstract="true" id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<!-- Set to true to enable distributed class loading for examples, default is false. -->
<property name="peerClassLoadingEnabled" value="true"/>
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
new file mode 100644
index 0000000..9df9f79
--- /dev/null
+++ b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
@@ -0,0 +1,158 @@
+/*
+ * 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.examples.binary.datagrid.store.auto;
+
+import java.sql.Types;
+import java.util.UUID;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteCache;
+import org.apache.ignite.IgniteException;
+import org.apache.ignite.Ignition;
+import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore;
+import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory;
+import org.apache.ignite.cache.store.jdbc.JdbcType;
+import org.apache.ignite.cache.store.jdbc.JdbcTypeField;
+import org.apache.ignite.cache.store.jdbc.dialect.H2Dialect;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.examples.ExampleNodeStartup;
+import org.apache.ignite.examples.util.DbH2ServerStartup;
+import org.apache.ignite.examples.model.Person;
+import org.apache.ignite.transactions.Transaction;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
+
+/**
+ * Demonstrates usage of cache with underlying persistent store configured.
+ * <p>
+ * This example uses {@link CacheJdbcPojoStore} as a persistent store.
+ * <p>
+ * To start the example, you should:
+ * <ul>
+ * <li>Start H2 database TCP server using {@link DbH2ServerStartup}.</li>
+ * <li>Start a few nodes using {@link ExampleNodeStartup} or by starting remote nodes as specified below.</li>
+ * <li>Start example using {@link CacheBinaryAutoStoreExample}.</li>
+ * </ul>
+ * <p>
+ * Remote nodes should always be started with special configuration file which
+ * contains H2 data source bean descriptor: {@code 'ignite.{sh|bat} examples/config/example-ignite.xml'}.
+ * <p>
+ * Alternatively you can run {@link ExampleNodeStartup} in another JVM which will
+ * start node with {@code examples/config/example-ignite.xml} configuration.
+ */
+public class CacheBinaryAutoStoreExample {
+ /** Global person ID to use across entire example. */
+ private static final Long id = Math.abs(UUID.randomUUID().getLeastSignificantBits());
+
+ /** Cache name. */
+ public static final String CACHE_NAME = CacheBinaryAutoStoreExample.class.getSimpleName();
+
+ /**
+ * Configure cache with store.
+ */
+ private static CacheConfiguration<Long, Person> cacheConfiguration() {
+ CacheJdbcPojoStoreFactory<Long, Person> storeFactory = new CacheJdbcPojoStoreFactory<>();
+
+ storeFactory.setDataSourceBean("h2-example-db");
+ storeFactory.setDialect(new H2Dialect());
+
+ JdbcType jdbcType = new JdbcType();
+
+ jdbcType.setCacheName(CACHE_NAME);
+ jdbcType.setDatabaseSchema("PUBLIC");
+ jdbcType.setDatabaseTable("PERSON");
+
+ jdbcType.setKeyType("java.lang.Long");
+ jdbcType.setKeyFields(new JdbcTypeField(Types.BIGINT, "ID", Long.class, "id"));
+
+ jdbcType.setValueType("org.apache.ignite.examples.model.Person");
+ jdbcType.setValueFields(
+ new JdbcTypeField(Types.BIGINT, "ID", Long.class, "id"),
+ new JdbcTypeField(Types.VARCHAR, "FIRST_NAME", String.class, "firstName"),
+ new JdbcTypeField(Types.VARCHAR, "LAST_NAME", String.class, "lastName")
+ );
+
+ storeFactory.setTypes(jdbcType);
+
+ CacheConfiguration<Long, Person> cfg = new CacheConfiguration<>(CACHE_NAME);
+
+ cfg.setCacheStoreFactory(storeFactory);
+
+ // Set atomicity as transaction, since we are showing transactions in the example.
+ cfg.setAtomicityMode(TRANSACTIONAL);
+
+ // This option will allow to start remote nodes without having user classes in classpath.
+ cfg.setKeepBinaryInStore(true);
+
+ cfg.setReadThrough(true);
+ cfg.setWriteThrough(true);
+
+ return cfg;
+ }
+
+ /**
+ * Executes example.
+ *
+ * @param args Command line arguments, none required.
+ * @throws IgniteException If example execution failed.
+ */
+ public static void main(String[] args) throws IgniteException {
+ // To start ignite with desired configuration uncomment the appropriate line.
+ try (Ignite ignite = Ignition.start("examples/config/example-ignite.xml")) {
+ System.out.println();
+ System.out.println(">>> Cache auto store example started.");
+
+ try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(cacheConfiguration())) {
+ try (Transaction tx = ignite.transactions().txStart()) {
+ Person val = cache.get(id);
+
+ System.out.println("Read value: " + val);
+
+ val = cache.getAndPut(id, new Person(id, "Isaac", "Newton"));
+
+ System.out.println("Overwrote old value: " + val);
+
+ val = cache.get(id);
+
+ System.out.println("Read value: " + val);
+
+ tx.commit();
+ }
+
+ System.out.println("Read value after commit: " + cache.get(id));
+
+ cache.clear();
+
+ System.out.println(">>> ------------------------------------------");
+ System.out.println(">>> Load data to cache from DB with cusom SQL...");
+
+ // Load cache on all data nodes with custom SQL statement.
+ cache.loadCache(null, "java.lang.Long", "select * from PERSON where id <= 3");
+
+ System.out.println("Loaded cache entries: " + cache.size());
+
+ cache.clear();
+
+ // Load cache on all data nodes with default SQL statement.
+ System.out.println(">>> Load ALL data to cache from DB...");
+ cache.loadCache(null);
+
+ System.out.println("Loaded cache entries: " + cache.size());
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/package-info.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/package-info.java b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/package-info.java
new file mode 100644
index 0000000..153f210
--- /dev/null
+++ b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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 description. -->
+ * Contains automatic JDBC store example.
+ */
+package org.apache.ignite.examples.binary.datagrid.store.auto;
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
index 37a31d7..a262c38 100644
--- a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
+++ b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
@@ -17,15 +17,25 @@
package org.apache.ignite.examples.datagrid.store.auto;
+import java.sql.Types;
import java.util.UUID;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteException;
import org.apache.ignite.Ignition;
import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore;
+import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory;
+import org.apache.ignite.cache.store.jdbc.JdbcType;
+import org.apache.ignite.cache.store.jdbc.JdbcTypeField;
+import org.apache.ignite.cache.store.jdbc.dialect.H2Dialect;
+import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.examples.ExampleNodeStartup;
import org.apache.ignite.examples.model.Person;
+import org.apache.ignite.examples.util.DbH2ServerStartup;
import org.apache.ignite.transactions.Transaction;
+import org.h2.jdbcx.JdbcConnectionPool;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
/**
* Demonstrates usage of cache with underlying persistent store configured.
@@ -35,23 +45,70 @@ import org.apache.ignite.transactions.Transaction;
* To start the example, you should:
* <ul>
* <li>Start H2 database TCP server using {@link DbH2ServerStartup}.</li>
- * <li>Start a few nodes using {@link ExampleNodeStartup} or by starting remote nodes as specified below.</li>
+ * <li>Start a few nodes using {@link ExampleNodeStartup}.</li>
* <li>Start example using {@link CacheAutoStoreExample}.</li>
* </ul>
* <p>
- * Remote nodes should always be started with special configuration file which
- * enables P2P class loading: {@code 'ignite.{sh|bat} examples/config/example-ignite.xml'}.
- * <p>
- * Alternatively you can run {@link ExampleNodeStartup} in another JVM which will
+ * Remote nodes can be started with {@link ExampleNodeStartup} in another JVM which will
* start node with {@code examples/config/example-ignite.xml} configuration.
*/
public class CacheAutoStoreExample {
- /** Cache name. */
- public static final String CACHE_NAME = CacheAutoStoreLoadDataExample.class.getSimpleName();
-
/** Global person ID to use across entire example. */
private static final Long id = Math.abs(UUID.randomUUID().getLeastSignificantBits());
+ /** Cache name. */
+ public static final String CACHE_NAME = CacheAutoStoreExample.class.getSimpleName();
+
+ /**
+ * Example store factory.
+ */
+ private static final class CacheJdbcPojoStoreExampleFactory extends CacheJdbcPojoStoreFactory<Long, Person> {
+ /** {@inheritDoc} */
+ @Override public CacheJdbcPojoStore<Long, Person> create() {
+ JdbcType jdbcType = new JdbcType();
+
+ jdbcType.setCacheName(CACHE_NAME);
+ jdbcType.setDatabaseSchema("PUBLIC");
+ jdbcType.setDatabaseTable("PERSON");
+
+ jdbcType.setKeyType("java.lang.Long");
+ jdbcType.setKeyFields(new JdbcTypeField(Types.BIGINT, "ID", Long.class, "id"));
+
+ jdbcType.setValueType("org.apache.ignite.examples.model.Person");
+ jdbcType.setValueFields(
+ new JdbcTypeField(Types.BIGINT, "ID", Long.class, "id"),
+ new JdbcTypeField(Types.VARCHAR, "FIRST_NAME", String.class, "firstName"),
+ new JdbcTypeField(Types.VARCHAR, "LAST_NAME", String.class, "lastName")
+ );
+
+ CacheJdbcPojoStore<Long, Person> store = new CacheJdbcPojoStore<>();
+
+ store.setDataSource(JdbcConnectionPool.create("jdbc:h2:tcp://localhost/mem:ExampleDb", "sa", ""));
+ store.setDialect(new H2Dialect());
+
+ store.setTypes(jdbcType);
+
+ return store;
+ }
+ }
+
+ /**
+ * Configure cache with store.
+ */
+ private static CacheConfiguration<Long, Person> cacheConfiguration() {
+ CacheConfiguration<Long, Person> cfg = new CacheConfiguration<>(CACHE_NAME);
+
+ cfg.setCacheStoreFactory(new CacheJdbcPojoStoreExampleFactory());
+
+ // Set atomicity as transaction, since we are showing transactions in the example.
+ cfg.setAtomicityMode(TRANSACTIONAL);
+
+ cfg.setReadThrough(true);
+ cfg.setWriteThrough(true);
+
+ return cfg;
+ }
+
/**
* Executes example.
*
@@ -64,7 +121,7 @@ public class CacheAutoStoreExample {
System.out.println();
System.out.println(">>> Cache auto store example started.");
- try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(CacheConfig.jdbcPojoStoreCache(CACHE_NAME))) {
+ try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(cacheConfiguration())) {
try (Transaction tx = ignite.transactions().txStart()) {
Person val = cache.get(id);
@@ -82,6 +139,24 @@ public class CacheAutoStoreExample {
}
System.out.println("Read value after commit: " + cache.get(id));
+
+ cache.clear();
+
+ System.out.println(">>> ------------------------------------------");
+ System.out.println(">>> Load data to cache from DB with cusom SQL...");
+
+ // Load cache on all data nodes with custom SQL statement.
+ cache.loadCache(null, "java.lang.Long", "select * from PERSON where id <= 3");
+
+ System.out.println("Loaded cache entries: " + cache.size());
+
+ cache.clear();
+
+ // Load cache on all data nodes with default SQL statement.
+ System.out.println(">>> Load ALL data to cache from DB...");
+ cache.loadCache(null);
+
+ System.out.println("Loaded cache entries: " + cache.size());
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreLoadDataExample.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreLoadDataExample.java b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreLoadDataExample.java
deleted file mode 100644
index 63a8c6f..0000000
--- a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreLoadDataExample.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * 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.examples.datagrid.store.auto;
-
-import org.apache.ignite.Ignite;
-import org.apache.ignite.IgniteCache;
-import org.apache.ignite.IgniteException;
-import org.apache.ignite.Ignition;
-import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore;
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.examples.ExampleNodeStartup;
-import org.apache.ignite.examples.ExamplesUtils;
-import org.apache.ignite.examples.model.Person;
-
-/**
- * Demonstrates how to load data from database.
- * <p>
- * This example uses {@link CacheJdbcPojoStore} as a persistent store.
- * <p>
- * To start the example, you should:
- * <ul>
- * <li>Start H2 database TCP server using {@link DbH2ServerStartup}.</li>
- * <li>Start a few nodes using {@link ExampleNodeStartup} or by starting remote nodes as specified below.</li>
- * <li>Start example using {@link CacheAutoStoreLoadDataExample}.</li>
- * </ul>
- * <p>
- * Remote nodes should always be started with special configuration file which
- * enables P2P class loading: {@code 'ignite.{sh|bat} examples/config/example-ignite.xml'}.
- * <p>
- * Alternatively you can run {@link ExampleNodeStartup} in another JVM which will
- * start node with {@code examples/config/example-ignite.xml} configuration.
- */
-public class CacheAutoStoreLoadDataExample {
- /** Cache name. */
- public static final String CACHE_NAME = CacheAutoStoreLoadDataExample.class.getSimpleName();
-
- /** Heap size required to run this example. */
- public static final int MIN_MEMORY = 1024 * 1024 * 1024;
-
- /**
- * Executes example.
- *
- * @param args Command line arguments, none required.
- * @throws IgniteException If example execution failed.
- */
- public static void main(String[] args) throws IgniteException {
- ExamplesUtils.checkMinMemory(MIN_MEMORY);
-
- try (Ignite ignite = Ignition.start("examples/config/example-ignite.xml")) {
- System.out.println();
- System.out.println(">>> Cache auto store load data example started.");
-
- CacheConfiguration<Long, Person> cacheCfg = CacheConfig.jdbcPojoStoreCache(CACHE_NAME);
-
- try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(cacheCfg)) {
- // Load cache on all data nodes with custom SQL statement.
- cache.loadCache(null, "java.lang.Long", "select * from PERSON where id <= 3");
-
- System.out.println("Loaded cache entries: " + cache.size());
-
- cache.clear();
-
- // Load cache on all data nodes with default SQL statement.
- cache.loadCache(null);
-
- System.out.println("Loaded cache entries: " + cache.size());
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheConfig.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheConfig.java b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheConfig.java
deleted file mode 100644
index 3b38aeb..0000000
--- a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheConfig.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * 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.examples.datagrid.store.auto;
-
-import java.sql.Types;
-import java.util.Arrays;
-import java.util.Collections;
-import javax.cache.configuration.Factory;
-import org.apache.ignite.cache.CacheTypeFieldMetadata;
-import org.apache.ignite.cache.CacheTypeMetadata;
-import org.apache.ignite.cache.store.CacheStore;
-import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore;
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.examples.model.Person;
-import org.h2.jdbcx.JdbcConnectionPool;
-
-import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
-
-/**
- * Predefined configuration for examples with {@link CacheJdbcPojoStore}.
- */
-public class CacheConfig {
- /**
- * Configure cache with store.
- */
- public static CacheConfiguration<Long, Person> jdbcPojoStoreCache(String name) {
- CacheConfiguration<Long, Person> cfg = new CacheConfiguration<>(name);
-
- // Set atomicity as transaction, since we are showing transactions in the example.
- cfg.setAtomicityMode(TRANSACTIONAL);
-
- cfg.setCacheStoreFactory(new Factory<CacheStore<? super Long, ? super Person>>() {
- @Override public CacheStore<? super Long, ? super Person> create() {
- CacheJdbcPojoStore<Long, Person> store = new CacheJdbcPojoStore<>();
-
- store.setDataSource(JdbcConnectionPool.create("jdbc:h2:tcp://localhost/mem:ExampleDb", "sa", ""));
-
- return store;
- }
- });
-
- CacheTypeMetadata meta = new CacheTypeMetadata();
-
- meta.setDatabaseTable("PERSON");
-
- meta.setKeyType("java.lang.Long");
- meta.setValueType("org.apache.ignite.examples.model.Person");
-
- meta.setKeyFields(Collections.singletonList(new CacheTypeFieldMetadata("ID", Types.BIGINT, "id", Long.class)));
-
- meta.setValueFields(Arrays.asList(
- new CacheTypeFieldMetadata("ID", Types.BIGINT, "id", long.class),
- new CacheTypeFieldMetadata("FIRST_NAME", Types.VARCHAR, "firstName", String.class),
- new CacheTypeFieldMetadata("LAST_NAME", Types.VARCHAR, "lastName", String.class)
- ));
-
- cfg.setTypeMetadata(Collections.singletonList(meta));
-
- cfg.setWriteBehindEnabled(true);
-
- cfg.setReadThrough(true);
- cfg.setWriteThrough(true);
-
- return cfg;
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/DbH2ServerStartup.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/DbH2ServerStartup.java b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/DbH2ServerStartup.java
deleted file mode 100644
index f5e07a8..0000000
--- a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/DbH2ServerStartup.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * 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.examples.datagrid.store.auto;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.sql.SQLException;
-import org.apache.ignite.IgniteException;
-import org.h2.jdbcx.JdbcConnectionPool;
-import org.h2.tools.RunScript;
-import org.h2.tools.Server;
-
-/**
- * Start H2 database TCP server in order to access sample in-memory database from other processes.
- */
-public class DbH2ServerStartup {
- /** Create table script. */
- private static final String CREATE_TABLE =
- "create table PERSON(id bigint not null, first_name varchar(50), last_name varchar(50), PRIMARY KEY(id));";
-
- /** Sample data script. */
- private static final String POPULATE_TABLE =
- "insert into PERSON(id, first_name, last_name) values(1, 'Johannes', 'Kepler');\n" +
- "insert into PERSON(id, first_name, last_name) values(2, 'Galileo', 'Galilei');\n" +
- "insert into PERSON(id, first_name, last_name) values(3, 'Henry', 'More');\n" +
- "insert into PERSON(id, first_name, last_name) values(4, 'Polish', 'Brethren');\n" +
- "insert into PERSON(id, first_name, last_name) values(5, 'Robert', 'Boyle');\n" +
- "insert into PERSON(id, first_name, last_name) values(6, 'Isaac', 'Newton');";
-
- /**
- * Start H2 database TCP server.
- *
- * @param args Command line arguments, none required.
- * @throws IgniteException If start H2 database TCP server failed.
- */
- public static void main(String[] args) throws IgniteException {
- try {
- // Start H2 database TCP server in order to access sample in-memory database from other processes.
- Server.createTcpServer("-tcpDaemon").start();
-
- // Try to connect to database TCP server.
- JdbcConnectionPool dataSrc = JdbcConnectionPool.create("jdbc:h2:tcp://localhost/mem:ExampleDb", "sa", "");
-
- // Create Person table in database.
- RunScript.execute(dataSrc.getConnection(), new StringReader(CREATE_TABLE));
-
- // Populates Person table with sample data in database.
- RunScript.execute(dataSrc.getConnection(), new StringReader(POPULATE_TABLE));
- }
- catch (SQLException e) {
- throw new IgniteException("Failed to start database TCP server", e);
- }
-
- try {
- do {
- System.out.println("Type 'q' and press 'Enter' to stop H2 TCP server...");
- }
- while ('q' != System.in.read());
- }
- catch (IOException ignored) {
- // No-op.
- }
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/util/DbH2ServerStartup.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/util/DbH2ServerStartup.java b/examples/src/main/java/org/apache/ignite/examples/util/DbH2ServerStartup.java
new file mode 100644
index 0000000..01717d0
--- /dev/null
+++ b/examples/src/main/java/org/apache/ignite/examples/util/DbH2ServerStartup.java
@@ -0,0 +1,79 @@
+/*
+ * 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.examples.util;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.sql.SQLException;
+import org.apache.ignite.IgniteException;
+import org.h2.jdbcx.JdbcConnectionPool;
+import org.h2.tools.RunScript;
+import org.h2.tools.Server;
+
+/**
+ * Start H2 database TCP server in order to access sample in-memory database from other processes.
+ */
+public class DbH2ServerStartup {
+ /** Create table script. */
+ private static final String CREATE_TABLE =
+ "create table PERSON(id bigint not null, first_name varchar(50), last_name varchar(50), PRIMARY KEY(id));";
+
+ /** Sample data script. */
+ private static final String POPULATE_TABLE =
+ "insert into PERSON(id, first_name, last_name) values(1, 'Johannes', 'Kepler');\n" +
+ "insert into PERSON(id, first_name, last_name) values(2, 'Galileo', 'Galilei');\n" +
+ "insert into PERSON(id, first_name, last_name) values(3, 'Henry', 'More');\n" +
+ "insert into PERSON(id, first_name, last_name) values(4, 'Polish', 'Brethren');\n" +
+ "insert into PERSON(id, first_name, last_name) values(5, 'Robert', 'Boyle');\n" +
+ "insert into PERSON(id, first_name, last_name) values(6, 'Isaac', 'Newton');";
+
+ /**
+ * Start H2 database TCP server.
+ *
+ * @param args Command line arguments, none required.
+ * @throws IgniteException If start H2 database TCP server failed.
+ */
+ public static void main(String[] args) throws IgniteException {
+ try {
+ // Start H2 database TCP server in order to access sample in-memory database from other processes.
+ Server.createTcpServer("-tcpDaemon").start();
+
+ // Try to connect to database TCP server.
+ JdbcConnectionPool dataSrc = JdbcConnectionPool.create("jdbc:h2:tcp://localhost/mem:ExampleDb", "sa", "");
+
+ // Create Person table in database.
+ RunScript.execute(dataSrc.getConnection(), new StringReader(CREATE_TABLE));
+
+ // Populates Person table with sample data in database.
+ RunScript.execute(dataSrc.getConnection(), new StringReader(POPULATE_TABLE));
+ }
+ catch (SQLException e) {
+ throw new IgniteException("Failed to start database TCP server", e);
+ }
+
+ try {
+ do {
+ System.out.println("Type 'q' and press 'Enter' to stop H2 TCP server...");
+ }
+ while ('q' != System.in.read());
+ }
+ catch (IOException ignored) {
+ // No-op.
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/examples/src/main/java/org/apache/ignite/examples/util/package-info.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/util/package-info.java b/examples/src/main/java/org/apache/ignite/examples/util/package-info.java
new file mode 100644
index 0000000..1d87d02
--- /dev/null
+++ b/examples/src/main/java/org/apache/ignite/examples/util/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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 description. -->
+ * Contains utility classes for examples.
+ */
+package org.apache.ignite.examples.util;
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheAbstractJdbcStore.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheAbstractJdbcStore.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheAbstractJdbcStore.java
index 7617e48..366262c 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheAbstractJdbcStore.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheAbstractJdbcStore.java
@@ -49,6 +49,7 @@ import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.binary.BinaryObject;
import org.apache.ignite.cache.CacheTypeFieldMetadata;
import org.apache.ignite.cache.CacheTypeMetadata;
import org.apache.ignite.cache.store.CacheStore;
@@ -1442,8 +1443,7 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
* @return Next index for parameters.
* @throws CacheException If failed to set statement parameters.
*/
- protected int fillKeyParameters(PreparedStatement stmt, int idx, EntryMapping em,
- Object key) throws CacheException {
+ protected int fillKeyParameters(PreparedStatement stmt, int idx, EntryMapping em, Object key) throws CacheException {
for (JdbcTypeField field : em.keyColumns()) {
Object fieldVal = extractParameter(em.cacheName, em.keyType(), em.keyKind(), field.getJavaFieldName(), key);
@@ -1474,8 +1474,14 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
*/
protected int fillValueParameters(PreparedStatement stmt, int idx, EntryMapping em, Object val)
throws CacheWriterException {
+ TypeKind valKind = em.valueKind();
+
+ // Object could be passed by cache in binary format in case of cache configured with setKeepBinaryInStore(true).
+ if (valKind == TypeKind.POJO && val instanceof BinaryObject)
+ valKind = TypeKind.BINARY;
+
for (JdbcTypeField field : em.uniqValFlds) {
- Object fieldVal = extractParameter(em.cacheName, em.valueType(), em.valueKind(), field.getJavaFieldName(), val);
+ Object fieldVal = extractParameter(em.cacheName, em.valueType(), valKind, field.getJavaFieldName(), val);
fillParameter(stmt, idx++, field, fieldVal);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ef7c7c/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStore.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStore.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStore.java
index abc4b2e..a25df04 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStore.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStore.java
@@ -354,6 +354,15 @@ public class CacheJdbcPojoStore<K, V> extends CacheAbstractJdbcStore<K, V> {
this.getter = getter;
this.setter = setter;
this.field = field;
+
+ if (getter != null)
+ getter.setAccessible(true);
+
+ if (setter != null)
+ setter.setAccessible(true);
+
+ if (field != null)
+ field.setAccessible(true);
}
/**
[07/50] [abbrv] ignite git commit: ignite-1.5 Should not wait on
preloader sync future for system caches callbacks.
Posted by sb...@apache.org.
ignite-1.5 Should not wait on preloader sync future for system caches callbacks.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3492deae
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3492deae
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3492deae
Branch: refs/heads/master
Commit: 3492deaec670f9870c58cdf608cf77282d184f00
Parents: f5e9918
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 12:15:55 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 12:19:14 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/IgnitionEx.java | 4 +--
.../CacheDefaultBinaryAffinityKeyMapper.java | 19 +++++++---
.../processors/cache/GridCacheAdapter.java | 8 +----
.../processors/cache/GridCacheContext.java | 37 ++++++++++++--------
.../GridCacheDefaultAffinityKeyMapper.java | 9 ++++-
.../processors/cache/GridCacheMapEntry.java | 6 +++-
.../GridCachePartitionExchangeManager.java | 23 ++++--------
.../processors/cache/GridCachePreloader.java | 5 +++
.../cache/GridCachePreloaderAdapter.java | 7 +++-
.../processors/cache/GridCacheProcessor.java | 14 +++++---
.../processors/cache/GridCacheProxyImpl.java | 12 +++++++
.../processors/cache/IgniteCacheProxy.java | 24 +++++++++++++
.../processors/cache/IgniteInternalCache.java | 9 +++++
.../dht/atomic/GridDhtAtomicCache.java | 4 +--
.../dht/preloader/GridDhtPartitionDemander.java | 17 +++++----
.../dht/preloader/GridDhtPreloader.java | 27 ++++++++++++++
.../CacheObjectBinaryProcessorImpl.java | 7 +++-
.../cache/transactions/IgniteTxHandler.java | 2 +-
.../communication/tcp/TcpCommunicationSpi.java | 6 ++--
.../CachePutEventListenerErrorSelfTest.java | 35 ++++++++++--------
.../cache/GridCacheClearSelfTest.java | 9 +++--
...eAbstractDataStructuresFailoverSelfTest.java | 32 +++++++++++------
...ObjectsCacheDataStructuresSelfTestSuite.java | 4 +++
...BinaryObjectsCacheExpiryPolicyTestSuite.java | 4 +++
...gniteBinaryObjectsCacheRestartTestSuite.java | 4 +++
.../IgniteBinaryObjectsCacheTestSuite2.java | 4 +++
.../IgniteBinaryObjectsCacheTestSuite3.java | 4 +++
.../IgniteBinaryObjectsCacheTestSuite4.java | 4 +++
...IgniteBinaryObjectsComputeGridTestSuite.java | 4 +++
.../IgnitePortableCacheTestSuite.java | 1 -
30 files changed, 250 insertions(+), 95 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
index 889b25c..be06f85 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
@@ -2057,7 +2057,7 @@ public class IgnitionEx {
cache.setWriteSynchronizationMode(FULL_SYNC);
cache.setAffinity(new RendezvousAffinityFunction(false, 100));
cache.setNodeFilter(CacheConfiguration.ALL_NODES);
- cache.setRebalanceOrder(-1);//Prior to user caches.
+ cache.setRebalanceOrder(-2); //Prior to user caches.
return cache;
}
@@ -2078,7 +2078,7 @@ public class IgnitionEx {
ccfg.setWriteSynchronizationMode(FULL_SYNC);
ccfg.setCacheMode(cfg.getCacheMode());
ccfg.setNodeFilter(CacheConfiguration.ALL_NODES);
- ccfg.setRebalanceOrder(-1);//Prior to user caches.
+ ccfg.setRebalanceOrder(-1); //Prior to user caches.
if (cfg.getCacheMode() == PARTITIONED)
ccfg.setBackups(cfg.getBackups());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java
index efd38f7..d244a16 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.processors.cache;
+import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.IgniteKernal;
import org.apache.ignite.internal.processors.cache.portable.CacheObjectBinaryProcessorImpl;
@@ -30,12 +31,11 @@ public class CacheDefaultBinaryAffinityKeyMapper extends GridCacheDefaultAffinit
/** */
private static final long serialVersionUID = 0L;
+ /** */
+ private CacheObjectBinaryProcessorImpl proc;
+
/** {@inheritDoc} */
@Override public Object affinityKey(Object key) {
- IgniteKernal kernal = (IgniteKernal)ignite;
-
- CacheObjectBinaryProcessorImpl proc = (CacheObjectBinaryProcessorImpl)kernal.context().cacheObjects();
-
try {
key = proc.toPortable(key);
}
@@ -48,4 +48,15 @@ public class CacheDefaultBinaryAffinityKeyMapper extends GridCacheDefaultAffinit
else
return super.affinityKey(key);
}
+
+ /** {@inheritDoc} */
+ @Override public void ignite(Ignite ignite) {
+ super.ignite(ignite);
+
+ if (ignite != null) {
+ IgniteKernal kernal = (IgniteKernal)ignite;
+
+ proc = (CacheObjectBinaryProcessorImpl)kernal.context().cacheObjects();
+ }
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git 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
index b5b8690..f96954e 100644
--- 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
@@ -1288,13 +1288,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
});
}
- /**
- * Gets value without waiting for toplogy changes.
- *
- * @param key Key.
- * @return Value.
- * @throws IgniteCheckedException If failed.
- */
+ /** {@inheritDoc} */
public V getTopologySafe(K key) throws IgniteCheckedException {
String taskName = ctx.kernalContext().job().currentTaskName();
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
index 6e5f958..5b4f22c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
@@ -239,6 +239,9 @@ public class GridCacheContext<K, V> implements Externalizable {
/** Deployment enabled flag for this specific cache */
private boolean depEnabled;
+ /** */
+ private boolean deferredDelete;
+
/**
* Empty constructor required for {@link Externalizable}.
*/
@@ -506,6 +509,9 @@ public class GridCacheContext<K, V> implements Externalizable {
*/
public void cache(GridCacheAdapter<K, V> cache) {
this.cache = cache;
+
+ deferredDelete = cache.isDht() || cache.isDhtAtomic() || cache.isColocated() ||
+ (cache.isNear() && cache.configuration().getAtomicityMode() == ATOMIC);
}
/**
@@ -568,21 +574,7 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return {@code True} if entries should not be deleted from cache immediately.
*/
public boolean deferredDelete() {
- GridCacheAdapter<K, V> cache = this.cache;
-
- if (cache == null)
- throw new IllegalStateException("Cache stopped: " + cacheName);
-
- return deferredDelete(cache);
- }
-
- /**
- * @param cache Cache.
- * @return {@code True} if entries should not be deleted from cache immediately.
- */
- public boolean deferredDelete(GridCacheAdapter<?, ?> cache) {
- return cache.isDht() || cache.isDhtAtomic() || cache.isColocated() ||
- (cache.isNear() && cache.configuration().getAtomicityMode() == ATOMIC);
+ return deferredDelete;
}
/**
@@ -1752,6 +1744,7 @@ public class GridCacheContext<K, V> implements Externalizable {
*
* @param o Object to unwrap.
* @param keepPortable Keep portable flag.
+ * @param cpy Copy value flag.
* @return Unwrapped object.
*/
public Object unwrapPortableIfNeeded(Object o, boolean keepPortable, boolean cpy) {
@@ -1770,6 +1763,8 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return Cache object.
*/
@Nullable public CacheObject toCacheObject(@Nullable Object obj) {
+ assert validObjectForCache(obj) : obj;
+
return cacheObjects().toCacheObject(cacheObjCtx, obj, true);
}
@@ -1778,10 +1773,22 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return Cache key object.
*/
public KeyCacheObject toCacheKeyObject(Object obj) {
+ assert validObjectForCache(obj) : obj;
+
return cacheObjects().toCacheKeyObject(cacheObjCtx, obj, true);
}
/**
+ * @param obj Object.
+ * @return {@code False} if objects is not expected for cache.
+ */
+ private boolean validObjectForCache(Object obj) {
+ return obj == null ||
+ !CU.isUtilityCache(cacheName) ||
+ ctx.marshallerContext().isSystemType(obj.getClass().getName());
+ }
+
+ /**
* @param bytes Bytes.
* @return Cache key object.
* @throws IgniteCheckedException If failed.
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java
index 6c5a8dc..5422bbd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java
@@ -51,7 +51,6 @@ public class GridCacheDefaultAffinityKeyMapper implements AffinityKeyMapper {
private static final long serialVersionUID = 0L;
/** Injected ignite instance. */
- @IgniteInstanceResource
protected transient Ignite ignite;
/** Reflection cache. */
@@ -120,6 +119,14 @@ public class GridCacheDefaultAffinityKeyMapper implements AffinityKeyMapper {
return key;
}
+ /**
+ * @param ignite Ignite.
+ */
+ @IgniteInstanceResource
+ public void ignite(Ignite ignite) {
+ this.ignite = ignite;
+ }
+
/** {@inheritDoc} */
@Override public void reset() {
// No-op.
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index e1f2ade..aa06a24 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
@@ -1546,7 +1546,11 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
if (expiryPlc != null && !readFromStore && !cctx.putIfAbsentFilter(filter) && hasValueUnlocked())
updateTtl(expiryPlc);
- return new T3<>(false, retval ? CU.value(old, cctx, false) : null, null);
+ Object val = retval ?
+ cctx.cacheObjectContext().unwrapPortableIfNeeded(CU.value(old, cctx, false), keepBinary, false)
+ : null;
+
+ return new T3<>(false, val, null);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git 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
index 875a4e8..b13a5af 100644
--- 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
@@ -592,18 +592,6 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
}
/**
- * Gets maximum node version for the given topology version.
- *
- * @param topVer Topology version to get maximum node version for.
- * @return Maximum node version.
- */
- public IgniteProductVersion maximumNodeVersion(AffinityTopologyVersion topVer) {
- IgnitePair<IgniteProductVersion> vers = nodeVers.get(topVer);
-
- return vers == null ? cctx.localNode().version() : vers.get2();
- }
-
- /**
* @return {@code true} if entered to busy state.
*/
private boolean enterBusy() {
@@ -759,7 +747,10 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
GridDhtPartitionFullMap locMap = cacheCtx.topology().partitionMap(true);
if (useOldApi) {
- locMap = new GridDhtPartitionFullMap(locMap.nodeId(), locMap.nodeOrder(), locMap.updateSequence(), locMap);
+ locMap = new GridDhtPartitionFullMap(locMap.nodeId(),
+ locMap.nodeOrder(),
+ locMap.updateSequence(),
+ locMap);
}
m.addFullPartitionsMap(cacheCtx.cacheId(), locMap);
@@ -1137,9 +1128,8 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
dumpPendingObjects();
- for (GridCacheContext cacheCtx : cctx.cacheContexts()) {
+ for (GridCacheContext cacheCtx : cctx.cacheContexts())
cacheCtx.preloader().dumpDebugInfo();
- }
}
/**
@@ -1405,9 +1395,8 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
List<String> waitList = new ArrayList<>(size - 1);
for (List<Integer> cIds : orderMap.headMap(order).values()) {
- for (Integer cId : cIds) {
+ for (Integer cId : cIds)
waitList.add(cctx.cacheContext(cId).name());
- }
}
Callable<Boolean> r = cacheCtx.preloader().addAssignments(
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
index 1658a89..8e1164b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
@@ -143,6 +143,11 @@ public interface GridCachePreloader {
public IgniteInternalFuture<Object> request(Collection<KeyCacheObject> keys, AffinityTopologyVersion topVer);
/**
+ * @return Future completed when rebalance on node start topology finished.
+ */
+ public IgniteInternalFuture<?> initialRebalanceFuture();
+
+ /**
* Force preload process.
*/
public void forcePreload();
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java
index 9c0e9f7..a1704fc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java
@@ -119,7 +119,12 @@ public class GridCachePreloaderAdapter implements GridCachePreloader {
/** {@inheritDoc} */
@Override public IgniteInternalFuture<Boolean> rebalanceFuture() {
- return new GridFinishedFuture<>(true);
+ return finFut;
+ }
+
+ /** {@inheritDoc} */
+ @Override public IgniteInternalFuture<?> initialRebalanceFuture() {
+ return finFut;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index 6654a15..e53f186 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -796,7 +796,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
if (!ctx.config().isDaemon())
ctx.marshallerContext().onMarshallerCacheStarted(ctx);
- marshallerCache().context().preloader().syncFuture().listen(new CIX1<IgniteInternalFuture<?>>() {
+ marshallerCache().context().preloader().initialRebalanceFuture().listen(new CIX1<IgniteInternalFuture<?>>() {
@Override public void applyx(IgniteInternalFuture<?> f) throws IgniteCheckedException {
ctx.marshallerContext().onMarshallerCachePreloaded(ctx);
}
@@ -817,10 +817,16 @@ public class GridCacheProcessor extends GridProcessorAdapter {
if (cfg.getRebalanceMode() == SYNC) {
if (cfg.getCacheMode() == REPLICATED ||
(cfg.getCacheMode() == PARTITIONED && cfg.getRebalanceDelay() >= 0)) {
- cache.preloader().syncFuture().get();
+ boolean utilityCache = CU.isUtilityCache(cache.name());
- if (CU.isUtilityCache(cache.name()))
- ctx.cacheObjects().onUtilityCacheStarted();
+ if (utilityCache || CU.isMarshallerCache(cache.name())) {
+ cache.preloader().initialRebalanceFuture().get();
+
+ if (utilityCache)
+ ctx.cacheObjects().onUtilityCacheStarted();
+ }
+ else
+ cache.preloader().syncFuture().get();
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java
index e82c422..68e70c3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java
@@ -304,6 +304,18 @@ public class GridCacheProxyImpl<K, V> implements IgniteInternalCache<K, V>, Exte
}
/** {@inheritDoc} */
+ @Override public V getTopologySafe(K key) throws IgniteCheckedException {
+ CacheOperationContext prev = gate.enter(opCtx);
+
+ try {
+ return delegate.getTopologySafe(key);
+ }
+ finally {
+ gate.leave(prev);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public IgniteInternalFuture<V> getAsync(K key) {
CacheOperationContext prev = gate.enter(opCtx);
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
index 8a1cc3f..8fd4323 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
@@ -1954,6 +1954,30 @@ public class IgniteCacheProxy<K, V> extends AsyncSupportAdapter<IgniteCache<K, V
return new IgniteFutureImpl<>(ctx.preloader().syncFuture());
}
+ /**
+ * Gets value without waiting for toplogy changes.
+ *
+ * @param key Key.
+ * @return Value.
+ */
+ public V getTopologySafe(K key) {
+ try {
+ GridCacheGateway<K, V> gate = this.gate;
+
+ CacheOperationContext prev = onEnter(gate, opCtx);
+
+ try {
+ return delegate.getTopologySafe(key);
+ }
+ finally {
+ onLeave(gate, prev);
+ }
+ }
+ catch (IgniteCheckedException e) {
+ throw cacheException(e);
+ }
+ }
+
/** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgniteCacheProxy.class, this);
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java
index 1055cf4..3150ea9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java
@@ -1854,4 +1854,13 @@ public interface IgniteInternalCache<K, V> extends Iterable<Cache.Entry<K, V>> {
* @return Future to be completed whenever loading completes.
*/
public IgniteInternalFuture<?> localLoadCacheAsync(@Nullable IgniteBiPredicate<K, V> p, @Nullable Object... args);
+
+ /**
+ * Gets value without waiting for toplogy changes.
+ *
+ * @param key Key.
+ * @return Value.
+ * @throws IgniteCheckedException If failed.
+ */
+ public V getTopologySafe(K key) throws IgniteCheckedException;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index a49341b..d8ab62a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -1378,7 +1378,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
// Enqueue if necessary after locks release.
if (deleted != null) {
assert !deleted.isEmpty();
- assert ctx.deferredDelete(this) : this;
+ assert ctx.deferredDelete() : this;
for (IgniteBiTuple<GridDhtCacheEntry, GridCacheVersion> e : deleted)
ctx.onDeferredDelete(e.get1(), e.get2());
@@ -2430,7 +2430,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
*/
private void unlockEntries(Collection<GridDhtCacheEntry> locked, AffinityTopologyVersion topVer) {
// Process deleted entries before locks release.
- assert ctx.deferredDelete(this) : this;
+ assert ctx.deferredDelete() : this;
// Entries to skip eviction manager notification for.
// Enqueue entries while holding locks.
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index 7ccb68e..20f12b6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -145,9 +145,8 @@ public class GridDhtPartitionDemander {
Map<Integer, Object> tops = new HashMap<>();
- for (int idx = 0; idx < cctx.gridConfig().getRebalanceThreadPoolSize(); idx++) {
+ for (int idx = 0; idx < cctx.gridConfig().getRebalanceThreadPoolSize(); idx++)
tops.put(idx, GridCachePartitionExchangeManager.rebalanceTopic(idx));
- }
rebalanceTopics = tops;
}
@@ -862,9 +861,8 @@ public class GridDhtPartitionDemander {
U.log(log, "Cancelled rebalancing from all nodes [cache=" + cctx.name()
+ ", topology=" + topologyVersion());
- for (UUID nodeId : remaining.keySet()) {
+ for (UUID nodeId : remaining.keySet())
cleanupRemoteContexts(nodeId);
- }
remaining.clear();
@@ -959,9 +957,9 @@ public class GridDhtPartitionDemander {
Collection<Integer> parts = remaining.get(nodeId).get2();
if (parts != null) {
- boolean removed = parts.remove(p);
+ boolean rmvd = parts.remove(p);
- assert removed;
+ assert rmvd;
if (parts.isEmpty()) {
U.log(log, "Completed " + ((remaining.size() == 1 ? "(final) " : "") +
@@ -1039,6 +1037,11 @@ public class GridDhtPartitionDemander {
onDone(!cancelled);
}
}
+
+ /** {@inheritDoc} */
+ public String toString() {
+ return S.toString(RebalanceFuture.class, this);
+ }
}
/**
@@ -1109,10 +1112,12 @@ public class GridDhtPartitionDemander {
/** Hide worker logger and use cache logger instead. */
private IgniteLogger log = GridDhtPartitionDemander.this.log;
+ /** */
private volatile RebalanceFuture fut;
/**
* @param id Worker ID.
+ * @param fut Rebalance future.
*/
private DemandWorker(int id, RebalanceFuture fut) {
assert id >= 0;
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
index 8e56c2d..3e3cee3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
@@ -107,6 +107,9 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
/** Start future. */
private GridFutureAdapter<Object> startFut;
+ /** Future completed when rebalance on start topology finished. */
+ private final GridFutureAdapter<Object> initRebalanceFut;
+
/** Busy lock to prevent activities from accessing exchanger while it's stopping. */
private final ReadWriteLock busyLock = new ReentrantReadWriteLock();
@@ -155,6 +158,18 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
for (GridDhtAssignmentFetchFuture fut : pendingAssignmentFetchFuts.values())
fut.onNodeLeft(e.eventNode().id());
}
+
+ if (!initRebalanceFut.isDone()) {
+ startFut.listen(new CI1<IgniteInternalFuture<?>>() {
+ @Override public void apply(IgniteInternalFuture<?> fut) {
+ cctx.closures().runLocalSafe(new Runnable() {
+ @Override public void run() {
+ initRebalanceFut.onDone();
+ }
+ });
+ }
+ });
+ }
}
finally {
leaveBusy();
@@ -171,6 +186,7 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
top = cctx.dht().topology();
startFut = new GridFutureAdapter<>();
+ initRebalanceFut = new GridFutureAdapter<>();
}
/** {@inheritDoc} */
@@ -209,6 +225,12 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
supplier = new GridDhtPartitionSupplier(cctx);
demander = new GridDhtPartitionDemander(cctx, demandLock);
+ demander.rebalanceFuture().listen(new CI1<IgniteInternalFuture<Boolean>>() {
+ @Override public void apply(IgniteInternalFuture<Boolean> fut) {
+ initRebalanceFut.onDone();
+ }
+ });
+
supplier.start();
demander.start();
@@ -456,6 +478,11 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
return cctx.kernalContext().clientNode() ? new GridFinishedFuture<>(true) : demander.rebalanceFuture();
}
+ /** {@inheritDoc} */
+ @Override public IgniteInternalFuture<?> initialRebalanceFuture() {
+ return cctx.kernalContext().clientNode() ? new GridFinishedFuture<>(true) : initRebalanceFut;
+ }
+
/**
* @param topVer Requested topology version.
* @param fut Future to add.
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
index 5b70f2a..220a45a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
@@ -503,7 +503,12 @@ public class CacheObjectBinaryProcessorImpl extends IgniteCacheObjectProcessorIm
if (clientNode)
return clientMetaDataCache.get(typeId);
else {
- BinaryMetadata meta = metaDataCache.localPeek(new PortableMetadataKey(typeId));
+ PortableMetadataKey key = new PortableMetadataKey(typeId);
+
+ BinaryMetadata meta = metaDataCache.localPeek(key);
+
+ if (meta == null && !metaDataCache.context().preloader().syncFuture().isDone())
+ meta = metaDataCache.getTopologySafe(key);
return meta != null ? meta.wrap(portableCtx) : null;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
index 91ebfd3..b25baf8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
@@ -434,7 +434,7 @@ public class IgniteTxHandler {
tx0.setRollbackOnly(); // Just in case.
if (!X.hasCause(e, IgniteTxOptimisticCheckedException.class) &&
- !X.hasCause(e, IgniteFutureCancelledException.class))
+ !X.hasCause(e, IgniteFutureCancelledException.class) && !ctx.kernalContext().isStopping())
U.error(log, "Failed to prepare DHT transaction: " + tx0, e);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index 9f8bae3..e5885a6 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -2303,17 +2303,15 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
if (sockSndBuf > 0)
ch.socket().setSendBufferSize(sockSndBuf);
- GridNioRecoveryDescriptor recoveryDesc = recoveryDescriptor(node);
-
if (getSpiContext().node(node.id()) == null) {
- recoveryDesc.release();
-
U.closeQuiet(ch);
throw new ClusterTopologyCheckedException("Failed to send message " +
"(node left topology): " + node);
}
+ GridNioRecoveryDescriptor recoveryDesc = recoveryDescriptor(node);
+
if (!recoveryDesc.reserve()) {
U.closeQuiet(ch);
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java
index 0e0e521..bf8f615 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java
@@ -64,21 +64,26 @@ public class CachePutEventListenerErrorSelfTest extends GridCommonAbstractTest {
Ignition.setClientMode(true);
- Ignite ignite = startGrid("client");
-
- ignite.events().remoteListen(
- new IgniteBiPredicate<UUID, Event>() {
- @Override public boolean apply(UUID uuid, Event evt) {
- return true;
- }
- },
- new IgnitePredicate<Event>() {
- @Override public boolean apply(Event evt) {
- throw new NoClassDefFoundError("XXX");
- }
- },
- EventType.EVT_CACHE_OBJECT_PUT
- );
+ try {
+ Ignite ignite = startGrid("client");
+
+ ignite.events().remoteListen(
+ new IgniteBiPredicate<UUID, Event>() {
+ @Override public boolean apply(UUID uuid, Event evt) {
+ return true;
+ }
+ },
+ new IgnitePredicate<Event>() {
+ @Override public boolean apply(Event evt) {
+ throw new NoClassDefFoundError("XXX");
+ }
+ },
+ EventType.EVT_CACHE_OBJECT_PUT
+ );
+ }
+ finally {
+ Ignition.setClientMode(false);
+ }
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java
index 5e14f14..67316b4 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java
@@ -61,8 +61,13 @@ public class GridCacheClearSelfTest extends GridCommonAbstractTest {
Ignition.setClientMode(true);
- startGrid("client1");
- startGrid("client2");
+ try {
+ startGrid("client1");
+ startGrid("client2");
+ }
+ finally {
+ Ignition.setClientMode(false);
+ }
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
index 4ee200b..2751de1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
@@ -446,6 +446,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
String name = UUID.randomUUID().toString();
try {
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
assert g.semaphore(STRUCTURE_NAME, 10, false, false) != null;
@@ -502,6 +504,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
String name = UUID.randomUUID().toString();
try {
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true);
@@ -510,14 +514,12 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
sem.acquire();
- if (i == TOP_CHANGE_CNT - 1) {
+ if (i == TOP_CHANGE_CNT - 1)
sem.release();
- }
}
finally {
- if (i != TOP_CHANGE_CNT - 1) {
+ if (i != TOP_CHANGE_CNT - 1)
stopGrid(name);
- }
}
}
}
@@ -572,6 +574,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
names.add(name);
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true);
@@ -580,9 +584,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
sem.acquire();
- if (i == TOP_CHANGE_CNT - 1) {
+ if (i == TOP_CHANGE_CNT - 1)
sem.release();
- }
}
}
finally {
@@ -639,21 +642,20 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
String name = UUID.randomUUID().toString();
try {
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true);
assertNotNull(sem);
- if (i != 1) {
+ if (i != 1)
sem.acquire();
- }
-
}
finally {
- if (i != 1) {
+ if (i != 1)
stopGrid(name);
- }
}
}
@@ -846,6 +848,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
int id = idx.getAndIncrement();
try {
+ log.info("Start node: " + id);
+
startGrid(id);
Thread.sleep(1000);
@@ -1008,6 +1012,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
String name = UUID.randomUUID().toString();
try {
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
callback.apply(g);
@@ -1055,6 +1061,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
String name = UUID.randomUUID().toString();
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
names.add(name);
@@ -1144,6 +1152,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
startedNodes.add(name);
+ log.info("Start node: " + name);
+
Ignite g = startGrid(name);
callback.apply(g);
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java
index 1a77518..d18e3e3 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheDataStructuresSelfTestSuite {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java
index b5bd4de..8391c54 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java
@@ -26,6 +26,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheExpiryPolicyTestSuite {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java
index 0ef9446..a739188 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheRestartTestSuite {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java
index e8064e7..e5fa314 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheTestSuite2 {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
index 736a862..2778c97 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheTestSuite3 {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java
index 4f88e0a..74c8e61 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsCacheTestSuite4 {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java
index 878f59f..a53187c 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java
@@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties;
*
*/
public class IgniteBinaryObjectsComputeGridTestSuite {
+ /**
+ * @return Test suite.
+ * @throws Exception If failed.
+ */
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java
index 6e34a98..574ddeb 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java
@@ -76,7 +76,6 @@ public class IgnitePortableCacheTestSuite extends TestSuite {
ignoredTests.add(GridCacheMvccSelfTest.class);
suite.addTest(IgniteCacheTestSuite.suite(ignoredTests));
- suite.addTest(IgniteCacheExpiryPolicyTestSuite.suite());
suite.addTestSuite(GridCacheMemoryModePortableSelfTest.class);
suite.addTestSuite(GridCacheOffHeapTieredEvictionAtomicPortableSelfTest.class);
[17/50] [abbrv] ignite git commit: CacheFullApi
testIgniteCacheIterator unmuted
Posted by sb...@apache.org.
CacheFullApi testIgniteCacheIterator unmuted
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/c3897631
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/c3897631
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/c3897631
Branch: refs/heads/master
Commit: c38976319154e13a320ab1b161d2caa8b7b82d35
Parents: 022cdaf
Author: ashutak <as...@gridgain.com>
Authored: Tue Dec 1 16:39:57 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Tue Dec 1 16:39:57 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheAbstractFullApiSelfTest.java | 2 --
1 file changed, 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/c3897631/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
index 084fe83..5af90e9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
@@ -4127,8 +4127,6 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
* @throws Exception If failed.
*/
public void testIgniteCacheIterator() throws Exception {
- fail("https://issues.apache.org/jira/browse/IGNITE-1756");
-
IgniteCache<String, Integer> cache = jcache(0);
Iterator<Cache.Entry<String, Integer>> it = cache.iterator();
[02/50] [abbrv] ignite git commit: minor
Posted by sb...@apache.org.
minor
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/fcbc6d0e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/fcbc6d0e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/fcbc6d0e
Branch: refs/heads/master
Commit: fcbc6d0e6c7042cb39abbc0b388a5f9ade958d95
Parents: 3d6973b
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Nov 30 17:33:56 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Nov 30 17:33:56 2015 +0300
----------------------------------------------------------------------
.../java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java | 2 --
1 file changed, 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/fcbc6d0e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 8827a78..854ce95 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -44,7 +44,6 @@ import javax.net.ssl.SSLServerSocketFactory;
import javax.net.ssl.SSLSocketFactory;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteAuthenticationException;
-import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
@@ -60,7 +59,6 @@ import org.apache.ignite.internal.util.typedef.internal.LT;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteBiTuple;
-import org.apache.ignite.lang.IgniteCallable;
import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.lang.IgniteProductVersion;
import org.apache.ignite.lang.IgniteUuid;
[32/50] [abbrv] ignite git commit: Merge remote-tracking branch
'origin/ignite-1.5' into ignite-1.5
Posted by sb...@apache.org.
Merge remote-tracking branch 'origin/ignite-1.5' into ignite-1.5
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/5beed16e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/5beed16e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/5beed16e
Branch: refs/heads/master
Commit: 5beed16e3af924e367dffec841d39d09d326d110
Parents: dc0131d 50f6c01
Author: Anton Vinogradov <av...@apache.org>
Authored: Thu Dec 3 16:54:50 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Thu Dec 3 16:54:50 2015 +0300
----------------------------------------------------------------------
.../internal/portable/BinaryReaderExImpl.java | 2 +-
.../internal/portable/PortableContext.java | 34 +-
.../processors/cache/GridCacheContext.java | 30 ++
.../CacheDataStructuresManager.java | 31 +-
.../dht/atomic/GridDhtAtomicCache.java | 20 +-
.../CacheObjectBinaryProcessorImpl.java | 8 +
.../cache/query/GridCacheQueryManager.java | 12 +-
.../transactions/IgniteTxLocalAdapter.java | 11 +-
.../datastructures/CollocatedQueueItemKey.java | 75 ++++
.../datastructures/CollocatedSetItemKey.java | 87 +++++
.../datastructures/DataStructuresProcessor.java | 7 +-
.../GridAtomicCacheQueueImpl.java | 8 +-
.../datastructures/GridCacheQueueAdapter.java | 30 +-
.../datastructures/GridCacheQueueItemKey.java | 9 +-
.../datastructures/GridCacheSetImpl.java | 37 +-
.../datastructures/GridCacheSetItemKey.java | 21 +-
.../GridTransactionalCacheQueueImpl.java | 2 +-
.../processors/datastructures/QueueItemKey.java | 27 ++
.../processors/datastructures/SetItemKey.java | 36 ++
.../cache/IgniteCacheInvokeAbstractTest.java | 369 ++++++++++++++-----
...eAbstractDataStructuresFailoverSelfTest.java | 7 +-
.../GridCacheQueueApiSelfAbstractTest.java | 18 +-
.../GridCacheSetFailoverAbstractSelfTest.java | 6 +-
.../GridCachePartitionedQueueApiSelfTest.java | 5 +
...dCachePartitionedQueueEntryMoveSelfTest.java | 2 +-
.../IgnitePartitionedQueueNoBackupsTest.java | 92 +++++
.../GridCacheReplicatedQueueApiSelfTest.java | 5 +
.../GridCacheWriteBehindStoreAbstractTest.java | 2 +-
.../IgniteCacheDataStructuresSelfTestSuite.java | 3 +
29 files changed, 778 insertions(+), 218 deletions(-)
----------------------------------------------------------------------
[31/50] [abbrv] ignite git commit: Hotfix IGNITE-2079
Posted by sb...@apache.org.
Hotfix IGNITE-2079
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/dc0131da
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/dc0131da
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/dc0131da
Branch: refs/heads/master
Commit: dc0131da6582fb0f0d1ff25c62eb7462e5f460af
Parents: 86ec37e
Author: Anton Vinogradov <av...@apache.org>
Authored: Thu Dec 3 16:52:26 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Thu Dec 3 16:52:26 2015 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/GridCacheIoManager.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/dc0131da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index b06526e..9a391e5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -562,7 +562,7 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
default:
throw new IgniteCheckedException("Failed to send response to node. Unsupported direct type [message="
- + msg + "]");
+ + msg + "]", msg.classError());
}
}
[46/50] [abbrv] ignite git commit: IGNITE-2041 Fixed typo.
Posted by sb...@apache.org.
IGNITE-2041 Fixed typo.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3d585d5a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3d585d5a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3d585d5a
Branch: refs/heads/master
Commit: 3d585d5a5d3ccc5c3071d7547a19cf055bd9ce83
Parents: 23ead50
Author: AKuznetsov <ak...@gridgain.com>
Authored: Sat Dec 5 16:57:53 2015 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Sat Dec 5 16:57:53 2015 +0700
----------------------------------------------------------------------
.../binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java | 2 +-
.../ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3d585d5a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
index 9df9f79..63d947c 100644
--- a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
+++ b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/store/auto/CacheBinaryAutoStoreExample.java
@@ -138,7 +138,7 @@ public class CacheBinaryAutoStoreExample {
cache.clear();
System.out.println(">>> ------------------------------------------");
- System.out.println(">>> Load data to cache from DB with cusom SQL...");
+ System.out.println(">>> Load data to cache from DB with custom SQL...");
// Load cache on all data nodes with custom SQL statement.
cache.loadCache(null, "java.lang.Long", "select * from PERSON where id <= 3");
http://git-wip-us.apache.org/repos/asf/ignite/blob/3d585d5a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
----------------------------------------------------------------------
diff --git a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
index a262c38..5498e57 100644
--- a/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
+++ b/examples/src/main/java/org/apache/ignite/examples/datagrid/store/auto/CacheAutoStoreExample.java
@@ -143,7 +143,7 @@ public class CacheAutoStoreExample {
cache.clear();
System.out.println(">>> ------------------------------------------");
- System.out.println(">>> Load data to cache from DB with cusom SQL...");
+ System.out.println(">>> Load data to cache from DB with custom SQL...");
// Load cache on all data nodes with custom SQL statement.
cache.loadCache(null, "java.lang.Long", "select * from PERSON where id <= 3");
[48/50] [abbrv] ignite git commit: ignite-1.5 Added tx mdoe
configuration for IgnitePutTxBenchmark.
Posted by sb...@apache.org.
ignite-1.5 Added tx mdoe configuration for IgnitePutTxBenchmark.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/233231de
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/233231de
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/233231de
Branch: refs/heads/master
Commit: 233231de53e0d2c7d91244f7d65a13ecd515d8ce
Parents: 8033bc4
Author: sboikov <sb...@gridgain.com>
Authored: Mon Dec 7 10:40:19 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Dec 7 10:40:19 2015 +0300
----------------------------------------------------------------------
.../yardstick/cache/IgnitePutTxBenchmark.java | 26 +++++++++++++++++---
1 file changed, 22 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/233231de/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
index 9c3389f..15b7cd6 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
@@ -18,8 +18,11 @@
package org.apache.ignite.yardstick.cache;
import java.util.Map;
+import java.util.concurrent.Callable;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteSystemProperties;
+import org.apache.ignite.IgniteTransactions;
+import org.apache.ignite.yardstick.IgniteBenchmarkUtils;
import org.apache.ignite.yardstick.cache.model.SampleValue;
import org.yardstickframework.BenchmarkConfiguration;
@@ -27,20 +30,35 @@ import org.yardstickframework.BenchmarkConfiguration;
* Ignite benchmark that performs transactional put operations.
*/
public class IgnitePutTxBenchmark extends IgniteCacheAbstractBenchmark<Integer, Object> {
+ /** */
+ private IgniteTransactions txs;
+
+ /** */
+ private Callable<Void> clo;
+
/** {@inheritDoc} */
@Override public void setUp(BenchmarkConfiguration cfg) throws Exception {
super.setUp(cfg);
if (!IgniteSystemProperties.getBoolean("SKIP_MAP_CHECK"))
ignite().compute().broadcast(new WaitMapExchangeFinishCallable());
+
+ txs = ignite().transactions();
+
+ clo = new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ int key = nextRandom(args.range());
+
+ cache.put(key, new SampleValue(key));
+
+ return null;
+ }
+ };
}
/** {@inheritDoc} */
@Override public boolean test(Map<Object, Object> ctx) throws Exception {
- int key = nextRandom(args.range());
-
- // Implicit transaction is used.
- cache.put(key, new SampleValue(key));
+ IgniteBenchmarkUtils.doInTransaction(txs, args.txConcurrency(), args.txIsolation(), clo);
return true;
}
[14/50] [abbrv] ignite git commit: ignite-1.5 Skip message send on
node stop.
Posted by sb...@apache.org.
ignite-1.5 Skip message send on node stop.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/74f93b65
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/74f93b65
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/74f93b65
Branch: refs/heads/master
Commit: 74f93b650c40b8551b333dfbc486e549fc38f41e
Parents: 3e7c532
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 15:25:11 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 15:25:11 2015 +0300
----------------------------------------------------------------------
.../dht/preloader/GridDhtPartitionDemander.java | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/74f93b65/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index 728e792..eb9e97f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -283,7 +283,7 @@ public class GridDhtPartitionDemander {
* @param force {@code True} if dummy reassign.
* @param caches Rebalancing of these caches will be finished before this started.
* @param cnt Counter.
- * @throws IgniteCheckedException Exception
+ * @throws IgniteCheckedException If failed.
*/
Callable<Boolean> addAssignments(final GridDhtPreloaderAssignments assigns, boolean force,
final Collection<String> caches, int cnt) {
@@ -741,7 +741,7 @@ public class GridDhtPartitionDemander {
private static final long serialVersionUID = 1L;
/** Should EVT_CACHE_REBALANCE_STOPPED event be sent of not. */
- private final boolean sendStoppedEvnt;
+ private final boolean sndStoppedEvnt;
/** */
private final GridCacheContext<?, ?> cctx;
@@ -770,6 +770,7 @@ public class GridDhtPartitionDemander {
* @param cctx Context.
* @param log Logger.
* @param sentStopEvnt Stop event flag.
+ * @param updateSeq Update sequence.
*/
RebalanceFuture(GridDhtPreloaderAssignments assigns,
GridCacheContext<?, ?> cctx,
@@ -782,7 +783,7 @@ public class GridDhtPartitionDemander {
this.topVer = assigns.topologyVersion();
this.cctx = cctx;
this.log = log;
- this.sendStoppedEvnt = sentStopEvnt;
+ this.sndStoppedEvnt = sentStopEvnt;
this.updateSeq = updateSeq;
}
@@ -794,7 +795,7 @@ public class GridDhtPartitionDemander {
this.topVer = null;
this.cctx = null;
this.log = null;
- this.sendStoppedEvnt = false;
+ this.sndStoppedEvnt = false;
this.updateSeq = -1;
}
@@ -1007,7 +1008,7 @@ public class GridDhtPartitionDemander {
*/
private void checkIsDone(boolean cancelled) {
if (remaining.isEmpty()) {
- if (cctx.events().isRecordable(EVT_CACHE_REBALANCE_STOPPED) && (!cctx.isReplicated() || sendStoppedEvnt))
+ if (cctx.events().isRecordable(EVT_CACHE_REBALANCE_STOPPED) && (!cctx.isReplicated() || sndStoppedEvnt))
preloadEvent(EVT_CACHE_REBALANCE_STOPPED, exchFut.discoveryEvent());
if (log.isDebugEnabled())
@@ -1385,6 +1386,7 @@ public class GridDhtPartitionDemander {
/**
* @param node Node.
* @param d D.
+ * @throws IgniteCheckedException If failed.
*/
public void run(ClusterNode node, GridDhtPartitionDemandMessage d) throws IgniteCheckedException {
demandLock.readLock().lock();
[09/50] [abbrv] ignite git commit: ignite-1.5 Muted test
Posted by sb...@apache.org.
ignite-1.5 Muted test
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/fb4ef34a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/fb4ef34a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/fb4ef34a
Branch: refs/heads/master
Commit: fb4ef34a5e0f7d70674d8cbe3522955ca420c61c
Parents: b64100a
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 12:53:34 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 12:53:34 2015 +0300
----------------------------------------------------------------------
...ridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/fb4ef34a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java
index cb40397..3122fe3 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest.java
@@ -20,7 +20,7 @@ package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.configuration.CacheConfiguration;
/**
- * TODO: IGNITE-809.
+ *
*/
public class GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest extends GridCacheMultinodeUpdateNearEnabledSelfTest {
/** {@inheritDoc} */
@@ -36,4 +36,9 @@ public class GridCacheMultinodeUpdateNearEnabledNoBackupsSelfTest extends GridCa
return ccfg;
}
-}
\ No newline at end of file
+
+ /** {@inheritDoc} */
+ @Override public void testInvoke() throws Exception {
+ fail("https://issues.apache.org/jira/browse/IGNITE-809");
+ }
+}
[35/50] [abbrv] ignite git commit: IGNITE-1270 Implement basic
support for OSGi.
Posted by sb...@apache.org.
IGNITE-1270 Implement basic support for OSGi.
* OSGi manifests for most modules.
* Apache Karaf features file to facilitate deployment (along with dependencies).
* Make Ignite classloading OSGi-friendly and support different strategies.
* Several integration tests with Pax Exam.
* POM restructuring to promote 3rd party dep versions to build params.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/96e08027
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/96e08027
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/96e08027
Branch: refs/heads/master
Commit: 96e0802775fe94e9ba77fab147129142b809e432
Parents: 5beed16
Author: Raul Kripalani <ra...@apache.org>
Authored: Thu Dec 3 14:44:12 2015 +0000
Committer: Raul Kripalani <ra...@apache.org>
Committed: Thu Dec 3 14:44:12 2015 +0000
----------------------------------------------------------------------
examples/pom.xml | 2 +-
examples/schema-import/pom.xml | 2 +-
modules/aop/pom.xml | 12 +-
modules/aws/pom.xml | 18 +-
modules/camel/pom.xml | 11 +-
modules/core/pom.xml | 28 +-
modules/flume/pom.xml | 16 +-
modules/geospatial/pom.xml | 20 ++
modules/hadoop/pom.xml | 2 +-
modules/hibernate/pom.xml | 10 +-
modules/indexing/pom.xml | 22 +-
modules/jcl/pom.xml | 11 +
modules/jms11/pom.xml | 20 +-
modules/jta/pom.xml | 17 +
modules/kafka/pom.xml | 16 +-
modules/log4j/pom.xml | 10 +
modules/log4j2/pom.xml | 11 +
modules/mqtt/pom.xml | 24 +-
modules/osgi-karaf/README.txt | 18 +
modules/osgi-karaf/licenses/apache-2.0.txt | 202 ++++++++++++
modules/osgi-karaf/pom.xml | 85 +++++
.../osgi-karaf/src/main/resources/features.xml | 327 +++++++++++++++++++
modules/osgi-paxlogging/README.txt | 12 +
modules/osgi-paxlogging/licenses/apache-2.0.txt | 202 ++++++++++++
modules/osgi-paxlogging/pom.xml | 70 ++++
modules/osgi/README.txt | 65 ++++
modules/osgi/licenses/apache-2.0.txt | 202 ++++++++++++
modules/osgi/pom.xml | 171 ++++++++++
.../IgniteAbstractOsgiContextActivator.java | 238 ++++++++++++++
.../org/apache/ignite/osgi/IgniteOsgiUtils.java | 69 ++++
.../BundleDelegatingClassLoader.java | 147 +++++++++
.../classloaders/ContainerSweepClassLoader.java | 134 ++++++++
.../OsgiClassLoadingStrategyType.java | 29 ++
.../ignite/osgi/AbstractIgniteKarafTest.java | 109 +++++++
.../IgniteKarafFeaturesInstallationTest.java | 100 ++++++
.../ignite/osgi/IgniteOsgiServiceTest.java | 131 ++++++++
.../apache/ignite/osgi/IgniteOsgiTestSuite.java | 32 ++
.../activators/BasicIgniteTestActivator.java | 76 +++++
.../ignite/osgi/activators/TestOsgiFlags.java | 53 +++
.../osgi/activators/TestOsgiFlagsImpl.java | 83 +++++
modules/rest-http/pom.xml | 34 +-
modules/scalar-2.10/pom.xml | 9 +-
modules/scalar/pom.xml | 9 +-
modules/schedule/pom.xml | 25 +-
modules/schema-import/pom.xml | 2 +-
modules/slf4j/pom.xml | 12 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spring/pom.xml | 30 +-
modules/ssh/pom.xml | 19 +-
modules/twitter/pom.xml | 12 +-
modules/urideploy/pom.xml | 17 +-
modules/visor-console-2.10/pom.xml | 4 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 4 +-
modules/web/pom.xml | 13 +-
modules/zookeeper/pom.xml | 14 +-
parent/pom.xml | 136 +++++++-
pom.xml | 3 +
58 files changed, 3079 insertions(+), 75 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index e7cd059..33c4f51 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -34,7 +34,7 @@
<dependency>
<groupId>javax.cache</groupId>
<artifactId>cache-api</artifactId>
- <version>1.0.0</version>
+ <version>${javax.cache.version}</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/examples/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/examples/schema-import/pom.xml b/examples/schema-import/pom.xml
index a6b635c..d315c63 100644
--- a/examples/schema-import/pom.xml
+++ b/examples/schema-import/pom.xml
@@ -41,7 +41,7 @@
<dependency>
<groupId>javax.cache</groupId>
<artifactId>cache-api</artifactId>
- <version>1.0.0</version>
+ <version>${javax.cache.version}</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index f410f65..8598863 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -44,13 +44,13 @@
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
- <version>1.7.2</version>
+ <version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
- <version>1.7.2</version>
+ <version>${aspectj.version}</version>
</dependency>
<dependency>
@@ -107,5 +107,13 @@
</excludes>
</testResource>
</testResources>
+
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
</build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index 53979cb..68bb4c8 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -44,25 +44,25 @@
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
- <version>1.3.21.1</version>
+ <version>${aws.sdk.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
- <version>4.2.3</version>
+ <version>${httpclient.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
- <version>4.2.3</version>
+ <version>${httpcore.version}</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
- <version>1.6</version>
+ <version>${commons.codec.version}</version>
</dependency>
<dependency>
@@ -100,4 +100,14 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/camel/pom.xml b/modules/camel/pom.xml
index 328780a..e1c20f2 100644
--- a/modules/camel/pom.xml
+++ b/modules/camel/pom.xml
@@ -35,7 +35,6 @@
<url>http://ignite.apache.org</url>
<properties>
- <camel.version>2.16.0</camel.version>
<guava.version>18.0</guava.version>
<okhttp.version>2.5.0</okhttp.version>
</properties>
@@ -98,4 +97,14 @@
</dependencies>
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 907c553..88e1c25 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -43,13 +43,29 @@
<properties>
<ignite.update.notifier.product>apache-ignite</ignite.update.notifier.product>
+
+ <!-- Imports:
+ - com.sun.jmx.mbeanserver => only used from TCKMBeanServerBuilder which has no usages within Ignite's
+ runtime codebase. Therefore, it's likely that code will not be hit during normal operation and we exclude it.
+ - javax.enterprise.util is optional.
+ -->
+ <osgi.import.package>
+ javax.enterprise.util;resolution:=optional,
+ !com.sun.jmx.mbeanserver,
+ *
+ </osgi.import.package>
+ <osgi.export.package>
+ org.apache.ignite.*,
+ org.jsr166.*;version=1.0.0;
+ {local-packages}
+ </osgi.export.package>
</properties>
<dependencies>
<dependency>
<groupId>javax.cache</groupId>
<artifactId>cache-api</artifactId>
- <version>1.0.0</version>
+ <version>${javax.cache.version}</version>
</dependency>
<dependency>
@@ -90,7 +106,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
<scope>test</scope>
</dependency>
@@ -139,7 +155,7 @@
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
- <version>2.4</version>
+ <version>${jsonlib.version}</version>
<classifier>jdk15</classifier>
<scope>test</scope>
</dependency>
@@ -276,6 +292,12 @@
</execution>
</executions>
</plugin>
+
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
</plugins>
</build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/flume/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flume/pom.xml b/modules/flume/pom.xml
index 0768410..8598248 100644
--- a/modules/flume/pom.xml
+++ b/modules/flume/pom.xml
@@ -34,10 +34,6 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
- <properties>
- <flume-ng.version>1.6.0</flume-ng.version>
- </properties>
-
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -48,7 +44,7 @@
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>flume-ng-core</artifactId>
- <version>${flume-ng.version}</version>
+ <version>${flume.ng.version}</version>
</dependency>
<dependency>
@@ -73,4 +69,14 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index eefe279..229ecef 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -82,4 +82,24 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle.
+ This bundle is a fragment attached to the ignite-core bundle, as it contains and exports classes in
+ the org.apache.ignite.internal.processors.query.h2.opt in the same manner as ignite-indexing, thus
+ leading to a split package situation in OSGi.
+ -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index 75a9eea..df39996 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -104,7 +104,7 @@
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
- <version>1.8.3</version>
+ <version>${commons.beanutils.version}</version>
<scope>test</scope>
</dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index d5a1be4..766ca97 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -71,7 +71,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
<scope>test</scope>
</dependency>
@@ -134,5 +134,13 @@
</excludes>
</testResource>
</testResources>
+
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
</build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index 13a11b4..e7a1c3b 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -44,19 +44,19 @@
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
- <version>1.6</version>
+ <version>${commons.codec.version}</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
- <version>3.5.0</version>
+ <version>${lucene.version}</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
</dependency>
<dependency>
@@ -108,6 +108,22 @@
</execution>
</executions>
</plugin>
+
+ <!-- Generate the OSGi MANIFEST.MF for this bundle.
+ This bundle is a fragment attached to the ignite-core bundle, as it contains and exports classes in
+ the org.apache.ignite.internal.processors.query.h2.opt in the same manner as ignite-geospatial, thus
+ leading to a split package situation in OSGi. It also contains an internal processor.
+ -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
</plugins>
</build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index a2ee45f..8678caa 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -55,4 +55,15 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/jms11/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jms11/pom.xml b/modules/jms11/pom.xml
index 4665ce9..2e2ffe6 100644
--- a/modules/jms11/pom.xml
+++ b/modules/jms11/pom.xml
@@ -34,10 +34,6 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
- <properties>
- <activemq.version>5.12.0</activemq.version>
- </properties>
-
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -46,9 +42,9 @@
</dependency>
<dependency>
- <groupId>javax.jms</groupId>
- <artifactId>jms-api</artifactId>
- <version>1.1-rev-1</version>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-jms_1.1_spec</artifactId>
+ <version>${jms.spec.version}</version>
</dependency>
<dependency>
@@ -88,4 +84,14 @@
</dependency>
</dependencies>
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index 4724c4f..9dabe28 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -83,4 +83,21 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <!-- This is a fragment because it's a processor module. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index b62f177..443d73c 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.10</artifactId>
- <version>0.8.2.1</version>
+ <version>${kafka.version}</version>
<exclusions>
<exclusion>
<groupId>com.sun.jmx</groupId>
@@ -72,7 +72,7 @@
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
- <version>3.4.5</version>
+ <version>${zookeeper.version}</version>
</dependency>
<dependency>
@@ -84,7 +84,7 @@
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-all</artifactId>
- <version>4.2</version>
+ <version>${asm.version}</version>
</dependency>
<dependency>
@@ -103,4 +103,14 @@
</dependency>
</dependencies>
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index f08217e..e27732e 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -54,4 +54,14 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/log4j2/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j2/pom.xml b/modules/log4j2/pom.xml
index db351cb..e195ce7 100644
--- a/modules/log4j2/pom.xml
+++ b/modules/log4j2/pom.xml
@@ -61,4 +61,15 @@
<version>2.3</version>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/mqtt/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mqtt/pom.xml b/modules/mqtt/pom.xml
index a1ce973..c0b17e6 100644
--- a/modules/mqtt/pom.xml
+++ b/modules/mqtt/pom.xml
@@ -34,12 +34,6 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
- <properties>
- <paho.version>1.0.2</paho.version>
- <activemq.version>5.12.0</activemq.version>
- <guava-retryier.version>2.0.0</guava-retryier.version>
- </properties>
-
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -56,7 +50,13 @@
<dependency>
<groupId>com.github.rholder</groupId>
<artifactId>guava-retrying</artifactId>
- <version>${guava-retryier.version}</version>
+ <version>${guava.retrying.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>${guava.version}</version>
</dependency>
<dependency>
@@ -110,4 +110,14 @@
</repository>
</repositories>
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-karaf/README.txt
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/README.txt b/modules/osgi-karaf/README.txt
new file mode 100644
index 0000000..6bd1555
--- /dev/null
+++ b/modules/osgi-karaf/README.txt
@@ -0,0 +1,18 @@
+Apache Ignite OSGi Karaf Integration Module
+-------------------------------------------
+
+This module contains a feature repository to facilitate installing Apache Ignite into an Apache Karaf container.
+
+Use the following Karaf command:
+
+ karaf@root()> feature:repo-add mvn:org.apache.ignite/ignite-osgi-karaf/${ignite.version}/xml/features
+
+Replacing ${ignite.version} with the Apache Ignite version you woudl like to install.
+
+You may now list the Ignite features that are available for installation:
+
+ karaf@root()> feature:list | grep ignite
+
+Each feature installs the corresponding ignite module + its dependencies.
+
+We include an global feature with name 'ignite-all' that collectively installs all Ignite features at once.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-karaf/licenses/apache-2.0.txt
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/licenses/apache-2.0.txt b/modules/osgi-karaf/licenses/apache-2.0.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/modules/osgi-karaf/licenses/apache-2.0.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed 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.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-karaf/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/pom.xml b/modules/osgi-karaf/pom.xml
new file mode 100644
index 0000000..f1ac66b
--- /dev/null
+++ b/modules/osgi-karaf/pom.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ 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.
+-->
+
+<!--
+ POM file.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-parent</artifactId>
+ <version>1</version>
+ <relativePath>../../parent</relativePath>
+ </parent>
+
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-osgi-karaf</artifactId>
+ <version>1.5.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>filter</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>resources</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <version>1.9.1</version>
+ <executions>
+ <execution>
+ <id>attach-artifacts</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attach-artifact</goal>
+ </goals>
+ <configuration>
+ <artifacts>
+ <artifact>
+ <file>target/classes/features.xml</file>
+ <type>xml</type>
+ <classifier>features</classifier>
+ </artifact>
+ </artifacts>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-karaf/src/main/resources/features.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/src/main/resources/features.xml b/modules/osgi-karaf/src/main/resources/features.xml
new file mode 100644
index 0000000..4dca39b
--- /dev/null
+++ b/modules/osgi-karaf/src/main/resources/features.xml
@@ -0,0 +1,327 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<features name="ignite" xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
+
+ <feature name="ignite-all" version="${project.version}" description="Apache Ignite :: All">
+ <details>
+ <![CDATA[Aggregate feature for installing all Apache Ignite module + their dependencies.
+
+ NOTE: Due to a bug in Apache Karaf (KARAF-4129), you must install the ignite-log4j feature explicitly and then either:
+ - manually refresh the pax-logging-api framework bundle - or -
+ - restart the Apache Karaf container.
+ You may safely ignore the 'Resource has no uri' exception if you follow this method.]]>
+ </details>
+ <feature>ignite-core</feature>
+ <feature>ignite-aop</feature>
+ <feature>ignite-aws</feature>
+ <feature>ignite-camel</feature>
+ <feature>ignite-flume</feature>
+ <feature>ignite-indexing</feature>
+ <feature>ignite-hibernate</feature>
+ <feature>ignite-jcl</feature>
+ <feature>ignite-jms11</feature>
+ <feature>ignite-jta</feature>
+ <feature>ignite-kafka</feature>
+ <feature>ignite-mqtt</feature>
+ <!-- KARAF-4129 Karaf feature containing a fragment that attaches to pax-logging-api cannot be installed
+ <feature>ignite-log4j</feature>-->
+ <feature>ignite-rest-http</feature>
+ <feature>ignite-scalar-2.11</feature>
+ <feature>ignite-schedule</feature>
+ <feature>ignite-slf4j</feature>
+ <feature>ignite-spring</feature>
+ <feature>ignite-ssh</feature>
+ <feature>ignite-twitter</feature>
+ <feature>ignite-urideploy</feature>
+ <feature>ignite-web</feature>
+ <feature>ignite-zookeeper</feature>
+ </feature>
+
+ <feature name="ignite-core" version="${project.version}" description="Apache Ignite :: Core">
+ <details><![CDATA[The Apache Ignite core module. This feature also installs the JCache 1.0 specification API.]]></details>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-cache-api/${javax.cache.bundle.version}</bundle>
+ <bundle dependency="true">mvn:org.apache.ignite/ignite-osgi/${project.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-core/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-aop" version="${project.version}" description="Apache Ignite :: AOP">
+ <details><![CDATA[The Apache Ignite AOP module + dependencies.]]></details>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-aspects</feature>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aspectj/${aspectj.bundle.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-aop/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-aws" version="${project.version}" description="Apache Ignite :: AWS">
+ <details><![CDATA[The Apache Ignite AWS module + dependencies.]]></details>
+ <bundle start="true" dependency="true">mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient.version}</bundle>
+ <bundle start="true" dependency="true">mvn:commons-codec/commons-codec/${commons.codec.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aws-java-sdk/${aws.sdk.bundle.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-aws/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-camel" version="${project.version}" description="Apache Ignite :: Camel">
+ <details>
+ <![CDATA[The Apache Ignite Camel module.
+
+ Make sure to install the Apache Camel feature repository before installing this feature.
+
+ mvn:org.apache.camel.karaf/apache-camel/\${camel.version}/xml/features
+
+ Installing this feature will trigger the installation of the 'camel-core' feature from the Camel repository.]]>
+ </details>
+ <feature>camel-core</feature>
+ <bundle start="true">mvn:org.apache.ignite/ignite-camel/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-flume" version="${project.version}" description="Apache Ignite :: Flume">
+ <details>
+ <![CDATA[The Apache Ignite Flume module + dependencies.]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <bundle start="true" dependency="true">wrap:mvn:org.apache.flume/flume-ng-core/${flume.ng.version}$Bundle-SymbolicName=flume-ng-core&Bundle-Version=${flume.ng.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-flume/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-hibernate" version="${project.version}" description="Apache Ignite :: Hibernate">
+ <details>
+ <![CDATA[The Apache Ignite Hibernate module + dependencies.
+
+ Installing this feature will trigger the installation of the 'hibernate' feature from the Apache Karaf distribution.]]>
+ </details>
+ <feature>hibernate</feature>
+ <bundle start="true">mvn:org.apache.ignite/ignite-hibernate/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-indexing" version="${project.version}" description="Apache Ignite :: Indexing">
+ <details>
+ <![CDATA[The Apache Ignite Indexing module + dependencies. This module is a fragment of ignite-core.
+
+ Be sure to refresh ignite-core manually in case it is not refreshed automatically.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:org.osgi/org.osgi.enterprise/${osgi.enterprise.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.lucene/${lucene.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:com.h2database/h2/${h2.version}</bundle>
+ <bundle start="false">mvn:org.apache.ignite/ignite-indexing/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-jcl" version="${project.version}" description="Apache Ignite :: JCL">
+ <details>
+ <![CDATA[The Apache Ignite JCL integration module. In Apache Karaf, this module will integrate with Pax Logging.]]>
+ </details>
+ <bundle start="true">mvn:org.apache.ignite/ignite-jcl/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-jms11" version="${project.version}" description="Apache Ignite :: JMS 1.1">
+ <details>
+ <![CDATA[The Apache Ignite JMS 1.1 module. Make sure to install your broker's JMS client bundle as well.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${jms.spec.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-jms11/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-jta" version="${project.version}" description="Apache Ignite :: JTA">
+ <details>
+ <![CDATA[The Apache Ignite JTA module + dependencies. This module is a fragment of ignite-core.
+
+ Be sure to refresh ignite-core manually in case it is not refreshed automatically.
+
+ Installing this feature will trigger the installation of the 'transaction' feature from the Apache Karaf distribution.]]>
+ </details>
+ <feature dependency="true">transaction</feature>
+ <bundle start="true">mvn:org.apache.ignite/ignite-jta/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-kafka" version="${project.version}" description="Apache Ignite :: Kafka">
+ <details>
+ <![CDATA[The Apache Ignite Kafka module + dependencies. This module installs the Scala 2.10 library bundle.]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <bundle start="true" dependency="true">mvn:org.scala-lang/scala-library/${scala210.library.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.zookeeper/zookeeper/${zookeeper.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.101tec/zkclient/${zkclient.version}$Bundle-SymbolicName=zkclient&Bundle-Version=${zkclient.version}&Export-Package=*;-noimport:=true;version=${zkclient.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.yammer.metrics/metrics-core/${yammer.metrics.core.version}$Bundle-SymbolicName=yammer-metrics-core&Bundle-Version=2.2.0&Export-Package=*;-noimport:=true;version=${yammer.metrics.core.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.yammer.metrics/metrics-annotation/${yammer.metrics.annotation.version}$Bundle-SymbolicName=yammer-metrics-annotation&Bundle-Version=2.2.0&Export-Package=*;-noimport:=true;version=${yammer.metrics.annotation.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.kafka-clients/${kafka.clients.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.kafka_2.10/${kafka.bundle.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-kafka/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-log4j" version="${project.version}" description="Apache Ignite :: log4j">
+ <details>
+ <![CDATA[The Apache Ignite log4j module + dependencies.
+
+ This module installs an OSGi fragment that exposes extra packages from the Pax Logging bundle required by Ignite.
+
+ Be sure to refresh the Pax Logging bundles manually in case this does not happen automatically.]]>
+ </details>
+ <bundle dependency="true" start-level="8">mvn:org.apache.ignite/ignite-osgi-paxlogging/${project.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-log4j/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-mqtt" version="${project.version}" description="Apache Ignite :: MQTT">
+ <details>
+ <![CDATA[The Apache Ignite MQTT module + dependencies.]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <bundle start="true" dependency="true">mvn:com.google.guava/guava/${guava.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.eclipse.paho/org.eclipse.paho.client.mqttv3/${paho.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.github.rholder/guava-retrying/${guava.retrying.version}$Bundle-SymbolicName=guava-retrying&Bundle-SymbolicName=guava-retrying&Bundle-Version=${guava.retrying.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-mqtt/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-rest-http" version="${project.version}" description="Apache Ignite :: REST HTTP">
+ <!-- NOTICE: XOM cannot be included by default due to an incompatible license;
+ please review its license model and install the dependency manually if you agree. -->
+ <details>
+ <![CDATA[The Apache Ignite REST HTTP module + dependencies.
+
+ Installing this feature will trigger the installation of the 'http' feature from the Apache Karaf distribution.
+
+ NOTE: Before using this feature you must review the license of the XOM bundle and install it manually if you accept it:
+ install -s mvn:xom/xom/1.2.5]]>
+ </details>
+ <feature dependency="true">http</feature>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-beanutils/${commons.beanutils.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.oro/${oro.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ezmorph/${ezmorph.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.json-lib/${jsonlib.bundle.version}</bundle>
+ <bundle start="true" dependency="true">mvn:commons-lang/commons-lang/${commons.lang.version}</bundle>
+ <bundle start="true" dependency="true">mvn:commons-collections/commons-collections/${commons.collections.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-rest-http/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-scalar-2.10" version="${project.version}" description="Apache Ignite :: Scala 2.10">
+ <details>
+ <![CDATA[The Apache Ignite Scala 2.11 integration module + dependencies. This module installs the Scala 2.10 library bundle.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:org.scala-lang/scala-library/${scala210.library.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-scalar_2.10/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-scalar-2.11" version="${project.version}" description="Apache Ignite :: Scala 2.11">
+ <details>
+ <![CDATA[The Apache Ignite Scala 2.11 integration module + dependencies. This module installs the Scala 2.11 library bundle.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:org.scala-lang/scala-library/${scala211.library.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-scalar/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-schedule" version="${project.version}" description="Apache Ignite :: Schedule">
+ <details>
+ <![CDATA[The Apache Ignite Schedule module + dependencies. This module is a fragment of ignite-core.]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <bundle start="true" dependency="true">wrap:mvn:it.sauronsoftware.cron4j/cron4j/${cron4j.version}$Bundle-SymbolicName=cron4j&Bundle-Version=${cron4j.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-schedule/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-slf4j" version="${project.version}" description="Apache Ignite :: slf4j">
+ <details>
+ <![CDATA[The Apache Ignite slf4j module.]]>
+ </details>
+ <bundle start="true">mvn:org.apache.ignite/ignite-slf4j/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-spring" version="${project.version}" description="Apache Ignite :: Spring Support">
+ <details>
+ <![CDATA[The Apache Ignite Spring integration module + dependencies. This module is a fragment of ignite-core.
+
+ Be sure to refresh ignite-core in case it is not refreshed automatically.
+
+ This feature installs the following features from the Apache Karaf distribution:
+ - spring
+ - spring-aspects
+ - spring-tx
+ - spring-jdbc
+
+ With version range: [${spring41.osgi.feature.version},4.2).]]>
+ </details>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-aspects</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-tx</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-jdbc</feature>
+ <bundle start="true">mvn:org.apache.ignite/ignite-spring/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-ssh" version="${project.version}" description="Apache Ignite :: SSH">
+ <details>
+ <![CDATA[The Apache Ignite SSH module + dependencies.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsch/${jsch.bundle.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-ssh/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-twitter" version="${project.version}" description="Apache Ignite :: Twitter">
+ <details>
+ <![CDATA[The Apache Ignite Twitter module + dependencies.]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <bundle start="true" dependency="true">mvn:com.google.guava/guava/${guava14.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.twitter/hbc-core/${twitter.hbc.version}$Bundle-SymbolicName=Hosebird Client Core&Bundle-Version=${twitter.hbc.version}</bundle>
+ <bundle start="true" dependency="true">wrap:mvn:com.twitter/hbc-twitter4j/${twitter.hbc.version}$Bundle-SymbolicName=Hosebird Client Twitter4J&Bundle-Version=${twitter.hbc.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-twitter/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-urideploy" version="${project.version}" description="Apache Ignite :: URI Deploy">
+ <details>
+ <![CDATA[The Apache Ignite URI Deploy module + dependencies.
+
+ This feature installs the following features from the Apache Karaf distribution:
+ - spring
+ - spring-aspects
+ - spring-tx
+
+ With version range: [${spring41.osgi.feature.version},4.2).]]>
+ </details>
+ <feature prerequisite="true">wrap</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-aspects</feature>
+ <feature dependency="true" version="[${spring41.osgi.feature.version},4.2)">spring-tx</feature>
+ <bundle start="true" dependency="true">wrap:mvn:net.sf.jtidy/jtidy/${jtidy.version}$Bundle-SymbolicName=JTidy&Bundle-Version=938</bundle>
+ <bundle start="true" dependency="true">mvn:commons-codec/commons-codec/${commons.codec.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-urideploy/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-web" version="${project.version}" description="Apache Ignite :: Web">
+ <details>
+ <![CDATA[The Apache Ignite Web module + dependencies.
+
+ This feature installs the 'http' feature from the Apache Karaf distribution.]]>
+ </details>
+ <feature dependency="true">http</feature>
+ <bundle start="true">mvn:org.apache.ignite/ignite-web/${project.version}</bundle>
+ </feature>
+
+ <feature name="ignite-zookeeper" version="${project.version}" description="Apache Ignite :: ZooKeeper">
+ <details>
+ <![CDATA[The Apache Ignite ZooKeeper module + dependencies.]]>
+ </details>
+ <bundle start="true" dependency="true">mvn:com.google.guava/guava/${guava16.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.codehaus.jackson/jackson-core-asl/${jackson.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.curator/curator-client/${curator.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.curator/curator-framework/${curator.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.curator/curator-recipes/${curator.version}</bundle>
+ <bundle start="true" dependency="true">mvn:org.apache.curator/curator-x-discovery/${curator.version}</bundle>
+ <bundle start="true">mvn:org.apache.ignite/ignite-zookeeper/${project.version}</bundle>
+ </feature>
+
+</features>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-paxlogging/README.txt
----------------------------------------------------------------------
diff --git a/modules/osgi-paxlogging/README.txt b/modules/osgi-paxlogging/README.txt
new file mode 100644
index 0000000..f6346f1
--- /dev/null
+++ b/modules/osgi-paxlogging/README.txt
@@ -0,0 +1,12 @@
+Apache Ignite OSGi Pax Logging Fragment Module
+----------------------------------------------
+
+This module is an OSGi fragment that exposes the following packages from the Pax Logging API bundle:
+
+ - org.apache.log4j.varia
+ - org.apache.log4j.xml
+
+These packages are required when installing the ignite-log4j bundle, and are not exposed by default
+by the Pax Logging API - the logging framework used by Apache Karaf.
+
+This fragment exposes them.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-paxlogging/licenses/apache-2.0.txt
----------------------------------------------------------------------
diff --git a/modules/osgi-paxlogging/licenses/apache-2.0.txt b/modules/osgi-paxlogging/licenses/apache-2.0.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/modules/osgi-paxlogging/licenses/apache-2.0.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed 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.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi-paxlogging/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-paxlogging/pom.xml b/modules/osgi-paxlogging/pom.xml
new file mode 100644
index 0000000..bd9e18e
--- /dev/null
+++ b/modules/osgi-paxlogging/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ 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.
+-->
+
+<!--
+ POM file.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-parent</artifactId>
+ <version>1</version>
+ <relativePath>../../parent</relativePath>
+ </parent>
+
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-osgi-paxlogging</artifactId>
+ <version>1.5.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <dependencies>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>${maven.bundle.plugin.version}</version>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.ops4j.pax.logging.pax-logging-api</Fragment-Host>
+ <Export-Package>
+ org.apache.log4j.varia;-noimport:=true,
+ org.apache.log4j.xml;-noimport:=true
+ </Export-Package>
+ <Import-Package>!*</Import-Package>
+ <_invalidfilenames />
+ <_nodefaultversion>true</_nodefaultversion>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/README.txt
----------------------------------------------------------------------
diff --git a/modules/osgi/README.txt b/modules/osgi/README.txt
new file mode 100644
index 0000000..35b133d
--- /dev/null
+++ b/modules/osgi/README.txt
@@ -0,0 +1,65 @@
+Apache Ignite OSGi Integration Module
+-------------------------------------
+
+This module provides the bridging components to make Apache Ignite run seamlessly inside an OSGi container
+like Apache Karaf. It provides a Bundle Activator to initialize Ignite, along with different classloaders
+facilitate class resolution within an OSGi environment.
+
+If using Ignite within Apache Karaf, please refer to the osgi-karaf and osgi-paxlogging modules too:
+
+ - osgi-karaf contains a feature repository to facilitate installing Ignite into a Karaf container.
+ - osgi-paxlogging contains an OSGi fragment required to make pax-logging-api expose certain log4j packages
+ required by ignite-log4j
+
+Importing the ignite-osgi module in a Maven project
+---------------------------------------------------
+
+If you are using Maven to manage dependencies of your project, you can add the ignite-osgi module
+dependency like this (replace '${ignite.version}' with actual Ignite version you are interested in):
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ ...
+ <dependencies>
+ ...
+ <dependency>
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-osgi</artifactId>
+ <version>${ignite.version}</version>
+ </dependency>
+ ...
+ </dependencies>
+ ...
+</project>
+
+Running the tests in this module
+--------------------------------
+
+We use the Pax Exam framework to fire up an Apache Karaf container (forked process) in order to execute the OSGi tests.
+
+Bundles are provisioned into the container via mvn: URLs. For this to work, you must have run a full build from the
+top directory of the Ignite source tree, including the install goal, which provisions the modules into your local
+Maven repository:
+
+ mvn clean install -Plgpl
+
+Neither compiling and running the tests, nor generating Javadocs are necessary. To disable these steps,
+use these switches:
+
+ -DskipTests -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
+
+You may then run the OSGi test suite:
+
+ mvn test -Dtest=IgniteOsgiTestSuite
+
+NOTE: This test uses environment variables set by the maven-surefire-plugin configuration. If you are running the
+test suite from within an IDE, either run it via Maven or set these environment variables manually in your
+Run/Debug configuration:
+
+ - projectVersion
+ - karafVersion
+ - camelVersion
+
+See the pom.xml file of this module to understand which values to set.
[28/50] [abbrv] ignite git commit: IGNITE-2074 Platforms C++ files
have 1.5.0-EA version
Posted by sb...@apache.org.
IGNITE-2074 Platforms C++ files have 1.5.0-EA version
Signed-off-by: Anton Vinogradov <av...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/86ec37e5
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/86ec37e5
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/86ec37e5
Branch: refs/heads/master
Commit: 86ec37e5e7bb6302ebff35fecb5576206adc1e1a
Parents: ad9e4db
Author: Pavel Tupitsyn <pt...@gridgain.com>
Authored: Thu Dec 3 12:45:29 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Thu Dec 3 14:48:00 2015 +0300
----------------------------------------------------------------------
pom.xml | 41 +++++++++++++++++++++++++++++------------
1 file changed, 29 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/86ec37e5/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 109dc94..5f86648 100644
--- a/pom.xml
+++ b/pom.xml
@@ -774,20 +774,37 @@
<target>
<script language="javascript">
function setClientVersion(ggVer, clientVer) {
- var p = project.getProperty(ggVer);
+ var p = project.getProperty(ggVer);
- if (java.util.regex.Pattern.matches(".*-p\\d+", p))
- project.setProperty(clientVer, p.replace("-p", "."));
- else
- if (java.util.regex.Pattern.matches(".*-[a-zA-Z]+\\d+.*", p))
- project.setProperty(clientVer, p.replaceAll("-[a-zA-Z]+(\\d+)?.*", ".$1"));
- else
- project.setProperty(clientVer, p);
+ var pos = p.search("-");
+
+ if (pos > 0)
+ {
+ var suffix = p.substring(pos);
+
+ var ver = 0;
+
+ var beta = /-b([0-9]+)/.exec(suffix);
+ if (beta !== null)
+ ver += parseInt(beta[1]);
+
+ var patch = /-p([0-9]+)/.exec(suffix);
+ if (patch !== null)
+ ver += parseInt(patch[1]) * 100;
+
+ if (suffix.search("final") > 0)
+ ver += 10000;
+
+ var resVer = p.substring(0, pos) +"." + ver;
+ project.setProperty(clientVer, resVer);
+ }
+ else
+ project.setProperty(clientVer, p);
}
function fix(dest, source) {
- project.setProperty(dest, project.getProperty(source).replace("-SNAPSHOT",
- ""));
+ project.setProperty(dest, project.getProperty(source).replace("-SNAPSHOT",
+ ""));
}
fix('ignite.version.fixed', 'project.version');
@@ -810,8 +827,8 @@
<echo message="Update ignite.version in cpp client" />
<replaceregexp byline="true" encoding="UTF-8">
- <regexp pattern="(AC_INIT.+\[)\d.\d.\d(.\d)?(\].+)" />
- <substitution expression="\1${new.client.version}\3" />
+ <regexp pattern="(AC_INIT.+\[)\d.\d.\d.*?(\].+)" />
+ <substitution expression="\1${new.client.version}\2" />
<fileset dir="${basedir}/">
<include name="**/configure.ac" />
</fileset>
[41/50] [abbrv] ignite git commit: Fixed
IgniteTransactionalWriteInvokeBenchmark
Posted by sb...@apache.org.
Fixed IgniteTransactionalWriteInvokeBenchmark
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e5de23e9
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e5de23e9
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e5de23e9
Branch: refs/heads/master
Commit: e5de23e9b61acc435ead4e70be9970a307906dbb
Parents: 11d668b
Author: ashutak <as...@gridgain.com>
Authored: Fri Dec 4 12:11:15 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Fri Dec 4 12:11:15 2015 +0300
----------------------------------------------------------------------
.../IgniteTransactionalWriteInvokeBenchmark.java | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e5de23e9/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
index 9f9b5f7..35befad 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
@@ -68,17 +68,15 @@ public class IgniteTransactionalWriteInvokeBenchmark extends IgniteFailoverAbstr
long start = System.nanoTime();
- if (cfg.memberId() == 0) {
- try (IgniteDataStreamer<String, Long> dataLdr = ignite().dataStreamer(cacheName())) {
- for (int k = 0; k < args.range() && !Thread.currentThread().isInterrupted(); k++) {
- dataLdr.addData("key-" + k + "-master", INITIAL_VALUE);
+ try (IgniteDataStreamer<String, Long> dataLdr = ignite().dataStreamer(cacheName())) {
+ for (int k = 0; k < args.range() && !Thread.currentThread().isInterrupted(); k++) {
+ dataLdr.addData("key-" + k + "-master", INITIAL_VALUE);
- for (int i = 0; i < args.keysCount(); i++)
- dataLdr.addData("key-" + k + "-" + i, INITIAL_VALUE);
+ for (int i = 0; i < args.keysCount(); i++)
+ dataLdr.addData("key-" + k + "-" + i, INITIAL_VALUE);
- if (k % 100000 == 0)
- println(cfg, "Populated accounts: " + k);
- }
+ if (k % 100000 == 0)
+ println(cfg, "Populated accounts: " + k);
}
}
[15/50] [abbrv] ignite git commit: Test fixed (GridNioSelfTest)
Posted by sb...@apache.org.
Test fixed (GridNioSelfTest)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b274a5ca
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b274a5ca
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b274a5ca
Branch: refs/heads/master
Commit: b274a5caf27c83ee4603ef7aa25a3ab5b89eb5ff
Parents: 74f93b6
Author: ashutak <as...@gridgain.com>
Authored: Tue Dec 1 16:35:31 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Tue Dec 1 16:35:31 2015 +0300
----------------------------------------------------------------------
.../internal/util/nio/GridNioSelfTest.java | 69 +++++++++++---------
1 file changed, 38 insertions(+), 31 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/b274a5ca/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
index fd141c9..594e3c2 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
@@ -58,9 +58,6 @@ import static java.util.concurrent.TimeUnit.SECONDS;
* Tests for new NIO server.
*/
public class GridNioSelfTest extends GridCommonAbstractTest {
- /** Test port. */
- private static final int PORT = 55443;
-
/** Message count in test without reconnect. */
private static final int MSG_CNT = 2000;
@@ -82,6 +79,9 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
/** Marshaller. */
private static volatile Marshaller marsh;
+ /** Test port. */
+ private int port = 55443;
+
/** {@inheritDoc} */
@Override protected void beforeTestsStarted() throws Exception {
getTestResources().startThreads(true);
@@ -94,6 +94,13 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
getTestResources().stopThreads();
}
+ /** {@inheritDoc} */
+ @Override protected void beforeTest() throws Exception {
+ super.beforeTest();
+
+ port++;
+ }
+
/**
* @throws Exception If failed.
*/
@@ -120,7 +127,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridPlainParser(), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridPlainParser(), lsnr);
try {
IgniteInternalFuture<?> fut = multithreadedAsync(new Runnable() {
@@ -170,11 +177,11 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridPlainParser(), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridPlainParser(), lsnr);
Socket s = createSocket();
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
try {
byte[] msg = new byte[MSG_SIZE];
@@ -228,12 +235,12 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridPlainParser(), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridPlainParser(), lsnr);
try {
Socket s = createSocket();
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
if (!(s instanceof SSLSocket)) {
// These methods are not supported by SSL sockets.
@@ -270,7 +277,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridPlainParser(), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridPlainParser(), lsnr);
final AtomicLong cnt = new AtomicLong();
@@ -287,7 +294,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
msg[i] = (byte) (i ^ (i * i - 1)); // Some data
try (Socket s = createSocket()) {
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
OutputStream out = s.getOutputStream();
@@ -362,12 +369,12 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridPlainParser(), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridPlainParser(), lsnr);
try {
Socket s = createSocket();
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
// This is needed for SSL to begin handshake.
s.getOutputStream().write(new byte[1]);
@@ -432,7 +439,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer.Builder<?> builder = serverBuilder(PORT, new GridPlainParser(), lsnr);
+ GridNioServer.Builder<?> builder = serverBuilder(port, new GridPlainParser(), lsnr);
GridNioServer<?> srvr = builder.sendQueueLimit(5).build();
@@ -441,7 +448,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
try {
Socket s = createSocket();
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
s.getOutputStream().write(new byte[1]);
@@ -472,7 +479,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
try {
Socket s = createSocket();
- s.connect(new InetSocketAddress(U.getLocalHost(), PORT), 1000);
+ s.connect(new InetSocketAddress(U.getLocalHost(), port), 1000);
try {
s.getOutputStream().write(msg);
@@ -597,13 +604,13 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
NioListener lsnr = new NioListener(latch);
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
TestClient client = null;
try {
for (int i = 0; i < 5; i++) {
- client = createClient(U.getLocalHost(), PORT, U.getLocalHost());
+ client = createClient(U.getLocalHost(), port, U.getLocalHost());
client.sendMessage(createMessage(), MSG_SIZE);
client.sendMessage(createMessage(), MSG_SIZE);
@@ -631,13 +638,13 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
NioListener lsnr = new NioListener(latch);
- GridNioServer<?> srvr1 = startServer(PORT, new BufferedParser(false), lsnr);
- GridNioServer<?> srvr2 = startServer(PORT + 1, new BufferedParser(false), lsnr);
+ GridNioServer<?> srvr1 = startServer(port, new BufferedParser(false), lsnr);
+ GridNioServer<?> srvr2 = startServer(port + 1, new BufferedParser(false), lsnr);
GridNioSession ses = null;
try {
- SocketChannel ch = SocketChannel.open(new InetSocketAddress(U.getLocalHost(), PORT + 1));
+ SocketChannel ch = SocketChannel.open(new InetSocketAddress(U.getLocalHost(), port + 1));
GridNioFuture<GridNioSession> fut = srvr1.createSession(ch, null);
@@ -669,7 +676,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
NioListener lsnr = new NioListener(latch);
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
try {
final byte[] data = createMessage();
@@ -679,7 +686,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
TestClient client = null;
try {
- client = createClient(U.getLocalHost(), PORT, U.getLocalHost());
+ client = createClient(U.getLocalHost(), port, U.getLocalHost());
for (int i = 0; i < MSG_CNT; i++)
client.sendMessage(data, data.length);
@@ -715,7 +722,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
final AtomicReference<Exception> err = new AtomicReference<>();
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()),
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()),
new EchoListener());
try {
@@ -727,7 +734,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
TestClient client = null;
try {
- client = createClient(U.getLocalHost(), PORT, U.getLocalHost());
+ client = createClient(U.getLocalHost(), port, U.getLocalHost());
MessageWithId msg = new MessageWithId(idProvider.getAndIncrement());
@@ -820,7 +827,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
final AtomicLong cntr = new AtomicLong();
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
try {
multithreaded(new Runnable() {
@@ -828,7 +835,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
TestClient client = null;
try {
- client = createClient(U.getLocalHost(), PORT, U.getLocalHost());
+ client = createClient(U.getLocalHost(), port, U.getLocalHost());
while (cntr.getAndIncrement() < MSG_CNT * THREAD_CNT) {
MessageWithId msg = new MessageWithId(idProvider.getAndIncrement());
@@ -901,14 +908,14 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
srvr.idleTimeout(1000);
try {
multithreaded(new Runnable() {
@Override public void run() {
- try (TestClient ignored = createClient(U.getLocalHost(), PORT, U.getLocalHost())) {
+ try (TestClient ignored = createClient(U.getLocalHost(), port, U.getLocalHost())) {
info("Before sleep.");
U.sleep(4000);
@@ -969,7 +976,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
}
};
- GridNioServer<?> srvr = startServer(PORT, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
+ GridNioServer<?> srvr = startServer(port, new GridBufferedParser(true, ByteOrder.nativeOrder()), lsnr);
// Set flag using reflection.
Field f = srvr.getClass().getDeclaredField("skipWrite");
@@ -983,7 +990,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
try {
multithreaded(new Runnable() {
@Override public void run() {
- try (TestClient ignored = createClient(U.getLocalHost(), PORT, U.getLocalHost())) {
+ try (TestClient ignored = createClient(U.getLocalHost(), port, U.getLocalHost())) {
info("Before sleep.");
U.sleep(4000);
@@ -1536,4 +1543,4 @@ public class GridNioSelfTest extends GridCommonAbstractTest {
return msg instanceof byte[] ? ByteBuffer.wrap((byte[])msg) : (ByteBuffer)msg;
}
}
-}
\ No newline at end of file
+}
[40/50] [abbrv] ignite git commit: IGNITE-2019 Fixed schema import on
Mac OSX El Capitan. - Fixes #292.
Posted by sb...@apache.org.
IGNITE-2019 Fixed schema import on Mac OSX El Capitan. - Fixes #292.
Signed-off-by: Andrey <an...@gridgain.com>
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/11d668b2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/11d668b2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/11d668b2
Branch: refs/heads/master
Commit: 11d668b2f77b12e7dc9bbc8ebdbfeb5e2ddad716
Parents: e6f6f40
Author: Andrey <an...@gridgain.com>
Authored: Fri Dec 4 15:52:14 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Fri Dec 4 15:52:14 2015 +0700
----------------------------------------------------------------------
.../org/apache/ignite/schema/ui/SchemaImportApp.java | 14 ++++++++++++++
1 file changed, 14 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/11d668b2/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
----------------------------------------------------------------------
diff --git a/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java b/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
index 495c316..6f9e05b 100644
--- a/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
+++ b/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
@@ -22,6 +22,7 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.lang.reflect.Field;
import java.net.URL;
import java.net.URLClassLoader;
import java.sql.Connection;
@@ -1738,6 +1739,19 @@ public class SchemaImportApp extends Application {
catch (Exception ignore) {
// No-op.
}
+
+ // Workaround for JDK 7/JavaFX 2 application on Mac OSX El Capitan.
+ try {
+ Class<?> fontFinderCls = Class.forName("com.sun.t2k.MacFontFinder");
+
+ Field psNameToPathMap = fontFinderCls.getDeclaredField("psNameToPathMap");
+
+ psNameToPathMap.setAccessible(true);
+ psNameToPathMap.set(null, new HashMap<String, String>());
+ }
+ catch (Exception ignore) {
+ // No-op.
+ }
}
launch(args);
[49/50] [abbrv] ignite git commit: 2064 Test hotfix
Posted by sb...@apache.org.
2064 Test hotfix
Signed-off-by: Anton Vinogradov <av...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/11b42629
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/11b42629
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/11b42629
Branch: refs/heads/master
Commit: 11b426297cffcb98b6dd374cfc88184b2b04246f
Parents: 233231d
Author: Anton Vinogradov <av...@apache.org>
Authored: Fri Dec 4 19:34:46 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Mon Dec 7 13:08:39 2015 +0300
----------------------------------------------------------------------
.../cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java | 6 +++++-
.../apache/ignite/testframework/config/GridTestProperties.java | 3 +++
.../ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java | 2 ++
3 files changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/11b42629/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java
index 0873d2d..35ee6cc 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicEntryProcessorDeploymentSelfTest.java
@@ -30,6 +30,7 @@ import org.apache.ignite.configuration.NearCacheConfiguration;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.config.GridTestProperties;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import static org.apache.ignite.cache.CacheAtomicityMode.ATOMIC;
@@ -45,7 +46,10 @@ public class GridCacheAtomicEntryProcessorDeploymentSelfTest extends GridCommonA
private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
/** Entry processor */
- protected static String TEST_ENT_PROCESSOR = "org.apache.ignite.tests.p2p.CacheDeploymentEntryProcessor";
+ protected static String TEST_ENT_PROCESSOR =
+ GridTestProperties.getProperty(GridTestProperties.ENTRY_PROCESSOR_CLASS_NAME) != null ?
+ GridTestProperties.getProperty(GridTestProperties.ENTRY_PROCESSOR_CLASS_NAME) :
+ "org.apache.ignite.tests.p2p.CacheDeploymentEntryProcessor";
/** Test value. */
protected static String TEST_VALUE = "org.apache.ignite.tests.p2p.CacheDeploymentTestValue";
http://git-wip-us.apache.org/repos/asf/ignite/blob/11b42629/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java b/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
index 1ea8c38..491f38f 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
@@ -72,6 +72,9 @@ public final class GridTestProperties {
/** */
public static final String MARSH_CLASS_NAME = "marshaller.class";
+ /** */
+ public static final String ENTRY_PROCESSOR_CLASS_NAME = "entry.processor.class";
+
/** Binary marshaller compact footers property. */
public static final String BINARY_COMPACT_FOOTERS = "binary.marshaller.compact.footers";
http://git-wip-us.apache.org/repos/asf/ignite/blob/11b42629/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
index 2778c97..3d25645 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java
@@ -31,6 +31,8 @@ public class IgniteBinaryObjectsCacheTestSuite3 {
*/
public static TestSuite suite() throws Exception {
GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName());
+ GridTestProperties.setProperty(GridTestProperties.ENTRY_PROCESSOR_CLASS_NAME,
+ "org.apache.ignite.tests.p2p.CacheDeploymentPortableEntryProcessor");
return IgniteCacheTestSuite3.suite();
}
[29/50] [abbrv] ignite git commit: ignite-2042 Added special
queue/set key classes to make collocation work with BinaryMarshaller. Also
fixed issue with 'invoke' result with binary marshaller.
Posted by sb...@apache.org.
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheDataStructuresSelfTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheDataStructuresSelfTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheDataStructuresSelfTestSuite.java
index c44455f..519d3c1 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheDataStructuresSelfTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheDataStructuresSelfTestSuite.java
@@ -65,6 +65,7 @@ import org.apache.ignite.internal.processors.cache.datastructures.partitioned.Gr
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedSetSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.IgnitePartitionedAtomicLongApiSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.IgnitePartitionedCountDownLatchSelfTest;
+import org.apache.ignite.internal.processors.cache.datastructures.partitioned.IgnitePartitionedQueueNoBackupsTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.IgnitePartitionedSetNoBackupsSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.replicated.GridCacheReplicatedAtomicReferenceApiSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.replicated.GridCacheReplicatedAtomicStampedApiSelfTest;
@@ -165,6 +166,8 @@ public class IgniteCacheDataStructuresSelfTestSuite extends TestSuite {
suite.addTest(new TestSuite(IgniteClientDataStructuresTest.class));
suite.addTest(new TestSuite(IgniteClientDiscoveryDataStructuresTest.class));
+ suite.addTest(new TestSuite(IgnitePartitionedQueueNoBackupsTest.class));
+
return suite;
}
}
\ No newline at end of file
[30/50] [abbrv] ignite git commit: ignite-2042 Added special
queue/set key classes to make collocation work with BinaryMarshaller. Also
fixed issue with 'invoke' result with binary marshaller.
Posted by sb...@apache.org.
ignite-2042 Added special queue/set key classes to make collocation work with BinaryMarshaller. Also fixed issue with 'invoke' result with binary marshaller.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/50f6c013
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/50f6c013
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/50f6c013
Branch: refs/heads/master
Commit: 50f6c0131fd761f6231e7c2632a010c093000e70
Parents: 86ec37e
Author: sboikov <sb...@gridgain.com>
Authored: Thu Dec 3 16:50:00 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Dec 3 16:50:00 2015 +0300
----------------------------------------------------------------------
.../internal/portable/BinaryReaderExImpl.java | 2 +-
.../internal/portable/PortableContext.java | 34 +-
.../processors/cache/GridCacheContext.java | 30 ++
.../CacheDataStructuresManager.java | 31 +-
.../dht/atomic/GridDhtAtomicCache.java | 20 +-
.../CacheObjectBinaryProcessorImpl.java | 8 +
.../cache/query/GridCacheQueryManager.java | 12 +-
.../transactions/IgniteTxLocalAdapter.java | 11 +-
.../datastructures/CollocatedQueueItemKey.java | 75 ++++
.../datastructures/CollocatedSetItemKey.java | 87 +++++
.../datastructures/DataStructuresProcessor.java | 7 +-
.../GridAtomicCacheQueueImpl.java | 8 +-
.../datastructures/GridCacheQueueAdapter.java | 30 +-
.../datastructures/GridCacheQueueItemKey.java | 9 +-
.../datastructures/GridCacheSetImpl.java | 37 +-
.../datastructures/GridCacheSetItemKey.java | 21 +-
.../GridTransactionalCacheQueueImpl.java | 2 +-
.../processors/datastructures/QueueItemKey.java | 27 ++
.../processors/datastructures/SetItemKey.java | 36 ++
.../cache/IgniteCacheInvokeAbstractTest.java | 369 ++++++++++++++-----
...eAbstractDataStructuresFailoverSelfTest.java | 7 +-
.../GridCacheQueueApiSelfAbstractTest.java | 18 +-
.../GridCacheSetFailoverAbstractSelfTest.java | 6 +-
.../GridCachePartitionedQueueApiSelfTest.java | 5 +
...dCachePartitionedQueueEntryMoveSelfTest.java | 2 +-
.../IgnitePartitionedQueueNoBackupsTest.java | 92 +++++
.../GridCacheReplicatedQueueApiSelfTest.java | 5 +
.../GridCacheWriteBehindStoreAbstractTest.java | 2 +-
.../IgniteCacheDataStructuresSelfTestSuite.java | 3 +
29 files changed, 778 insertions(+), 218 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
index ddbf6ba..91b67f6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
@@ -246,7 +246,7 @@ public class BinaryReaderExImpl implements BinaryReader, BinaryRawReaderEx, Bina
dataStart = start + DFLT_HDR_LEN;
}
- idMapper = userType ? ctx.userTypeIdMapper(typeId) : null;
+ idMapper = userType ? ctx.userTypeIdMapper(typeId) : BinaryInternalIdMapper.defaultInstance();
schema = PortableUtils.hasSchema(flags) ? getOrCreateSchema() : null;
}
else {
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
index 1482df9..fd6c41d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
@@ -66,6 +66,8 @@ import org.apache.ignite.binary.BinarySerializer;
import org.apache.ignite.internal.IgniteKernal;
import org.apache.ignite.internal.IgnitionEx;
import org.apache.ignite.internal.processors.cache.portable.CacheObjectBinaryProcessorImpl;
+import org.apache.ignite.internal.processors.datastructures.CollocatedQueueItemKey;
+import org.apache.ignite.internal.processors.datastructures.CollocatedSetItemKey;
import org.apache.ignite.internal.util.IgniteUtils;
import org.apache.ignite.internal.util.lang.GridMapEntry;
import org.apache.ignite.internal.util.typedef.F;
@@ -233,7 +235,8 @@ public class PortableContext implements Externalizable {
/**
* @param marsh Portable marshaller.
- * @throws org.apache.ignite.binary.BinaryObjectException In case of error.
+ * @param cfg Configuration.
+ * @throws BinaryObjectException In case of error.
*/
public void configure(BinaryMarshaller marsh, IgniteConfiguration cfg) throws BinaryObjectException {
if (marsh == null)
@@ -265,7 +268,7 @@ public class PortableContext implements Externalizable {
* @param globalIdMapper ID mapper.
* @param globalSerializer Serializer.
* @param typeCfgs Type configurations.
- * @throws org.apache.ignite.binary.BinaryObjectException In case of error.
+ * @throws BinaryObjectException In case of error.
*/
private void configure(
BinaryIdMapper globalIdMapper,
@@ -313,9 +316,8 @@ public class PortableContext implements Externalizable {
}
}
- for (TypeDescriptor desc : descs.descriptors()) {
+ for (TypeDescriptor desc : descs.descriptors())
registerUserType(desc.clsName, desc.idMapper, desc.serializer, desc.affKeyFieldName, desc.isEnum);
- }
BinaryInternalIdMapper dfltMapper = BinaryInternalIdMapper.create(globalIdMapper);
@@ -327,6 +329,20 @@ public class PortableContext implements Externalizable {
affKeyFieldNames.putIfAbsent(typeId, entry.getValue());
}
+
+ addSystemClassAffinityKey(CollocatedSetItemKey.class);
+ addSystemClassAffinityKey(CollocatedQueueItemKey.class);
+ }
+
+ /**
+ * @param cls Class.
+ */
+ private void addSystemClassAffinityKey(Class<?> cls) {
+ String fieldName = affinityFieldName(cls);
+
+ assert fieldName != null : cls;
+
+ affKeyFieldNames.putIfAbsent(cls.getName().hashCode(), affinityFieldName(cls));
}
/**
@@ -400,7 +416,7 @@ public class PortableContext implements Externalizable {
/**
* @param cls Class.
* @return Class descriptor.
- * @throws org.apache.ignite.binary.BinaryObjectException In case of error.
+ * @throws BinaryObjectException In case of error.
*/
public PortableClassDescriptor descriptorForClass(Class<?> cls, boolean deserialize)
throws BinaryObjectException {
@@ -722,7 +738,7 @@ public class PortableContext implements Externalizable {
* @param serializer Serializer.
* @param affKeyFieldName Affinity key field name.
* @param isEnum If enum.
- * @throws org.apache.ignite.binary.BinaryObjectException In case of error.
+ * @throws BinaryObjectException In case of error.
*/
@SuppressWarnings("ErrorNotRethrown")
public void registerUserType(String clsName,
@@ -808,7 +824,7 @@ public class PortableContext implements Externalizable {
/**
* @param typeId Type ID.
* @return Meta data.
- * @throws org.apache.ignite.binary.BinaryObjectException In case of error.
+ * @throws BinaryObjectException In case of error.
*/
@Nullable public BinaryType metadata(int typeId) throws BinaryObjectException {
return metaHnd != null ? metaHnd.metadata(typeId) : null;
@@ -964,7 +980,7 @@ public class PortableContext implements Externalizable {
* @param affKeyFieldName Affinity key field name.
* @param isEnum Enum flag.
* @param canOverride Whether this descriptor can be override.
- * @throws org.apache.ignite.binary.BinaryObjectException If failed.
+ * @throws BinaryObjectException If failed.
*/
private void add(String clsName,
BinaryIdMapper idMapper,
@@ -1044,7 +1060,7 @@ public class PortableContext implements Externalizable {
* Override portable class descriptor.
*
* @param other Other descriptor.
- * @throws org.apache.ignite.binary.BinaryObjectException If failed.
+ * @throws BinaryObjectException If failed.
*/
private void override(TypeDescriptor other) throws BinaryObjectException {
assert clsName.equals(other.clsName);
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
index 5b4f22c..d689ba6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
@@ -36,6 +36,7 @@ import javax.cache.Cache;
import javax.cache.configuration.Factory;
import javax.cache.expiry.EternalExpiryPolicy;
import javax.cache.expiry.ExpiryPolicy;
+import javax.cache.processor.EntryProcessorResult;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteLogger;
import org.apache.ignite.cache.CacheInterceptor;
@@ -53,6 +54,7 @@ import org.apache.ignite.internal.managers.deployment.GridDeploymentManager;
import org.apache.ignite.internal.managers.discovery.GridDiscoveryManager;
import org.apache.ignite.internal.managers.eventstorage.GridEventStorageManager;
import org.apache.ignite.internal.managers.swapspace.GridSwapSpaceManager;
+import org.apache.ignite.internal.portable.BinaryMarshaller;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.datastructures.CacheDataStructuresManager;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCacheAdapter;
@@ -1682,6 +1684,13 @@ public class GridCacheContext<K, V> implements Externalizable {
}
/**
+ * @return {@code True} if {@link BinaryMarshaller is configured}.
+ */
+ public boolean binaryMarshaller() {
+ return marshaller() instanceof BinaryMarshaller;
+ }
+
+ /**
* @return Keep portable flag.
*/
public boolean keepPortable() {
@@ -1752,6 +1761,27 @@ public class GridCacheContext<K, V> implements Externalizable {
}
/**
+ * @param resMap Invoke results map.
+ * @param keepBinary Keep binary flag.
+ * @return Unwrapped results.
+ */
+ public Map unwrapInvokeResult(@Nullable Map<Object, EntryProcessorResult> resMap, final boolean keepBinary) {
+ return F.viewReadOnly(resMap, new C1<EntryProcessorResult, EntryProcessorResult>() {
+ @Override public EntryProcessorResult apply(EntryProcessorResult res) {
+ if (res instanceof CacheInvokeResult) {
+ CacheInvokeResult invokeRes = (CacheInvokeResult)res;
+
+ if (invokeRes.result() != null)
+ res = CacheInvokeResult.fromResult(unwrapPortableIfNeeded(invokeRes.result(),
+ keepBinary, false));
+ }
+
+ return res;
+ }
+ });
+ }
+
+ /**
* @return Cache object context.
*/
public CacheObjectContext cacheObjectContext() {
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/datastructures/CacheDataStructuresManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/datastructures/CacheDataStructuresManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/datastructures/CacheDataStructuresManager.java
index ec787f8..6ec29b4 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/datastructures/CacheDataStructuresManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/datastructures/CacheDataStructuresManager.java
@@ -54,9 +54,9 @@ import org.apache.ignite.internal.processors.datastructures.GridCacheQueueProxy;
import org.apache.ignite.internal.processors.datastructures.GridCacheSetHeader;
import org.apache.ignite.internal.processors.datastructures.GridCacheSetHeaderKey;
import org.apache.ignite.internal.processors.datastructures.GridCacheSetImpl;
-import org.apache.ignite.internal.processors.datastructures.GridCacheSetItemKey;
import org.apache.ignite.internal.processors.datastructures.GridCacheSetProxy;
import org.apache.ignite.internal.processors.datastructures.GridTransactionalCacheQueueImpl;
+import org.apache.ignite.internal.processors.datastructures.SetItemKey;
import org.apache.ignite.internal.processors.task.GridInternal;
import org.apache.ignite.internal.util.GridConcurrentHashSet;
import org.apache.ignite.internal.util.GridSpinBusyLock;
@@ -79,7 +79,7 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
private final ConcurrentMap<IgniteUuid, GridCacheSetProxy> setsMap;
/** Set keys used for set iteration. */
- private ConcurrentMap<IgniteUuid, GridConcurrentHashSet<GridCacheSetItemKey>> setDataMap =
+ private ConcurrentMap<IgniteUuid, GridConcurrentHashSet<SetItemKey>> setDataMap =
new ConcurrentHashMap8<>();
/** Queues map. */
@@ -311,12 +311,13 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
*
* @param key Key.
* @param rmv {@code True} if entry was removed.
+ * @param keepPortable Keep portable flag.
*/
public void onEntryUpdated(KeyCacheObject key, boolean rmv, boolean keepPortable) {
Object key0 = cctx.cacheObjectContext().unwrapPortableIfNeeded(key, keepPortable, false);
- if (key0 instanceof GridCacheSetItemKey)
- onSetItemUpdated((GridCacheSetItemKey)key0, rmv);
+ if (key0 instanceof SetItemKey)
+ onSetItemUpdated((SetItemKey)key0, rmv);
}
/**
@@ -327,11 +328,11 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
public void onPartitionEvicted(int part) {
GridCacheAffinityManager aff = cctx.affinity();
- for (GridConcurrentHashSet<GridCacheSetItemKey> set : setDataMap.values()) {
- Iterator<GridCacheSetItemKey> iter = set.iterator();
+ for (GridConcurrentHashSet<SetItemKey> set : setDataMap.values()) {
+ Iterator<SetItemKey> iter = set.iterator();
while (iter.hasNext()) {
- GridCacheSetItemKey key = iter.next();
+ SetItemKey key = iter.next();
if (aff.partition(key) == part)
iter.remove();
@@ -415,7 +416,7 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
* @param id Set ID.
* @return Data for given set.
*/
- @Nullable public GridConcurrentHashSet<GridCacheSetItemKey> setData(IgniteUuid id) {
+ @Nullable public GridConcurrentHashSet<SetItemKey> setData(IgniteUuid id) {
return setDataMap.get(id);
}
@@ -436,7 +437,7 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
cctx.preloader().syncFuture().get();
}
- GridConcurrentHashSet<GridCacheSetItemKey> set = setDataMap.get(setId);
+ GridConcurrentHashSet<SetItemKey> set = setDataMap.get(setId);
if (set == null)
return;
@@ -445,9 +446,9 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
final int BATCH_SIZE = 100;
- Collection<GridCacheSetItemKey> keys = new ArrayList<>(BATCH_SIZE);
+ Collection<SetItemKey> keys = new ArrayList<>(BATCH_SIZE);
- for (GridCacheSetItemKey key : set) {
+ for (SetItemKey key : set) {
if (!loc && !aff.primary(cctx.localNode(), key, topVer))
continue;
@@ -555,14 +556,14 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
* @param key Set item key.
* @param rmv {@code True} if item was removed.
*/
- private void onSetItemUpdated(GridCacheSetItemKey key, boolean rmv) {
- GridConcurrentHashSet<GridCacheSetItemKey> set = setDataMap.get(key.setId());
+ private void onSetItemUpdated(SetItemKey key, boolean rmv) {
+ GridConcurrentHashSet<SetItemKey> set = setDataMap.get(key.setId());
if (set == null) {
if (rmv)
return;
- GridConcurrentHashSet<GridCacheSetItemKey> old = setDataMap.putIfAbsent(key.setId(),
+ GridConcurrentHashSet<SetItemKey> old = setDataMap.putIfAbsent(key.setId(),
set = new GridConcurrentHashSet<>());
if (old != null)
@@ -592,7 +593,7 @@ public class CacheDataStructuresManager extends GridCacheManagerAdapter {
* @throws IgniteCheckedException If failed.
*/
@SuppressWarnings("unchecked")
- private void retryRemoveAll(final IgniteInternalCache cache, final Collection<GridCacheSetItemKey> keys)
+ private void retryRemoveAll(final IgniteInternalCache cache, final Collection<SetItemKey> keys)
throws IgniteCheckedException {
DataStructuresProcessor.retry(log, new Callable<Void>() {
@Override public Void call() throws Exception {
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index d8ab62a..c5ec258 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -824,25 +824,9 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
return resFut.chain(new CX1<IgniteInternalFuture<Map<K, EntryProcessorResult<T>>>, Map<K, EntryProcessorResult<T>>>() {
@Override public Map<K, EntryProcessorResult<T>> applyx(IgniteInternalFuture<Map<K, EntryProcessorResult<T>>> fut) throws IgniteCheckedException {
- Map<K, EntryProcessorResult<T>> resMap = fut.get();
+ Map<Object, EntryProcessorResult> resMap = (Map)fut.get();
- if (resMap != null) {
- return F.viewReadOnly(resMap, new C1<EntryProcessorResult<T>, EntryProcessorResult<T>>() {
- @Override public EntryProcessorResult<T> apply(EntryProcessorResult<T> res) {
- if (res instanceof CacheInvokeResult) {
- CacheInvokeResult invokeRes = (CacheInvokeResult)res;
-
- if (invokeRes.result() != null)
- res = CacheInvokeResult.fromResult((T)ctx.unwrapPortableIfNeeded(invokeRes.result(),
- keepBinary, false));
- }
-
- return res;
- }
- });
- }
-
- return null;
+ return ctx.unwrapInvokeResult(resMap, keepBinary);
}
});
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
index 220a45a..d172bca 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java
@@ -602,6 +602,14 @@ public class CacheObjectBinaryProcessorImpl extends IgniteCacheObjectProcessorIm
if (affKeyFieldName != null)
return po.field(affKeyFieldName);
}
+ else if (po instanceof BinaryObjectEx) {
+ int id = ((BinaryObjectEx)po).typeId();
+
+ String affKeyFieldName = portableCtx.affinityKeyFieldName(id);
+
+ if (affKeyFieldName != null)
+ return po.field(affKeyFieldName);
+ }
}
catch (BinaryObjectException e) {
U.error(log, "Failed to get affinity field from portable object: " + po, e);
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
index bef587a..bb5d230 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
@@ -47,8 +47,8 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCacheA
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtLocalPartition;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtUnreservedPartitionException;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.datastructures.GridCacheSetItemKey;
import org.apache.ignite.internal.processors.datastructures.GridSetQueryPredicate;
+import org.apache.ignite.internal.processors.datastructures.SetItemKey;
import org.apache.ignite.internal.processors.platform.cache.PlatformCacheEntryFilter;
import org.apache.ignite.internal.processors.query.GridQueryFieldMetadata;
import org.apache.ignite.internal.processors.query.GridQueryFieldsResult;
@@ -761,21 +761,21 @@ public abstract class GridCacheQueryManager<K, V> extends GridCacheManagerAdapte
IgniteUuid id = filter.setId();
- Collection<GridCacheSetItemKey> data = cctx.dataStructures().setData(id);
+ Collection<SetItemKey> data = cctx.dataStructures().setData(id);
if (data == null)
data = Collections.emptyList();
final GridIterator<IgniteBiTuple<K, V>> it = F.iterator(
data,
- new C1<GridCacheSetItemKey, IgniteBiTuple<K, V>>() {
- @Override public IgniteBiTuple<K, V> apply(GridCacheSetItemKey e) {
+ new C1<SetItemKey, IgniteBiTuple<K, V>>() {
+ @Override public IgniteBiTuple<K, V> apply(SetItemKey e) {
return new IgniteBiTuple<>((K)e.item(), (V)Boolean.TRUE);
}
},
true,
- new P1<GridCacheSetItemKey>() {
- @Override public boolean apply(GridCacheSetItemKey e) {
+ new P1<SetItemKey>() {
+ @Override public boolean apply(SetItemKey e) {
return filter.apply(e, null);
}
});
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index f13cff4..33c0fa9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
@@ -3220,8 +3220,15 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter
try {
txFut.get();
- return new GridCacheReturn(cacheCtx, true, keepBinary,
- implicitRes.value(), implicitRes.success());
+ Object res = implicitRes.value();
+
+ if (implicitRes.invokeResult()) {
+ assert res == null || res instanceof Map : implicitRes;
+
+ res = cacheCtx.unwrapInvokeResult((Map)res, keepBinary);
+ }
+
+ return new GridCacheReturn(cacheCtx, true, keepBinary, res, implicitRes.success());
}
catch (IgniteCheckedException | RuntimeException e) {
rollbackAsync();
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedQueueItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedQueueItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedQueueItemKey.java
new file mode 100644
index 0000000..8eb9fa0
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedQueueItemKey.java
@@ -0,0 +1,75 @@
+/*
+ * 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.datastructures;
+
+import org.apache.ignite.cache.affinity.AffinityKeyMapped;
+import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.lang.IgniteUuid;
+
+/**
+ *
+ */
+public class CollocatedQueueItemKey implements QueueItemKey {
+ /** */
+ private IgniteUuid queueId;
+
+ /** */
+ @AffinityKeyMapped
+ private int queueNameHash;
+
+ /** */
+ private long idx;
+
+ /**
+ * @param queueId Queue unique ID.
+ * @param queueName Queue name.
+ * @param idx Item index.
+ */
+ public CollocatedQueueItemKey(IgniteUuid queueId, String queueName, long idx) {
+ this.queueId = queueId;
+ this.queueNameHash = queueName.hashCode();
+ this.idx = idx;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean equals(Object o) {
+ if (this == o)
+ return true;
+
+ if (o == null || getClass() != o.getClass())
+ return false;
+
+ CollocatedQueueItemKey itemKey = (CollocatedQueueItemKey)o;
+
+ return idx == itemKey.idx && queueId.equals(itemKey.queueId);
+ }
+
+ /** {@inheritDoc} */
+ @Override public int hashCode() {
+ int res = queueId.hashCode();
+
+ res = 31 * res + (int)(idx ^ (idx >>> 32));
+
+ return res;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(CollocatedQueueItemKey.class, this);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedSetItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedSetItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedSetItemKey.java
new file mode 100644
index 0000000..94cffd4
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/CollocatedSetItemKey.java
@@ -0,0 +1,87 @@
+/*
+ * 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.datastructures;
+
+import org.apache.ignite.cache.affinity.AffinityKeyMapped;
+import org.apache.ignite.internal.util.tostring.GridToStringInclude;
+import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.lang.IgniteUuid;
+
+/**
+ *
+ */
+public class CollocatedSetItemKey implements SetItemKey {
+ /** */
+ private IgniteUuid setId;
+
+ /** */
+ @GridToStringInclude
+ private Object item;
+
+ /** */
+ @AffinityKeyMapped
+ private int setNameHash;
+
+ /**
+ * @param setName Set name.
+ * @param setId Set unique ID.
+ * @param item Set item.
+ */
+ public CollocatedSetItemKey(String setName, IgniteUuid setId, Object item) {
+ this.setNameHash = setName.hashCode();
+ this.setId = setId;
+ this.item = item;
+ }
+
+ /** {@inheritDoc} */
+ @Override public IgniteUuid setId() {
+ return setId;
+ }
+
+ /** {@inheritDoc} */
+ @Override public Object item() {
+ return item;
+ }
+
+ /** {@inheritDoc} */
+ @Override public int hashCode() {
+ int res = setId.hashCode();
+
+ res = 31 * res + item.hashCode();
+
+ return res;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean equals(Object o) {
+ if (this == o)
+ return true;
+
+ if (o == null || getClass() != o.getClass())
+ return false;
+
+ CollocatedSetItemKey that = (CollocatedSetItemKey)o;
+
+ return setId.equals(that.setId) && item.equals(that.item);
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(CollocatedSetItemKey.class, this);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
index 998bd92..9ed9350 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
@@ -113,12 +113,6 @@ public final class DataStructuresProcessor extends GridProcessorAdapter {
/** Initial capacity. */
private static final int INITIAL_CAPACITY = 10;
- /** */
- private static final int MAX_UPDATE_RETRIES = 100;
-
- /** */
- private static final long RETRY_DELAY = 1;
-
/** Initialization latch. */
private final CountDownLatch initLatch = new CountDownLatch(1);
@@ -986,6 +980,7 @@ public final class DataStructuresProcessor extends GridProcessorAdapter {
hdr.id(),
name,
hdr.collocated(),
+ cctx.binaryMarshaller(),
hdr.head(),
hdr.tail(),
0);
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridAtomicCacheQueueImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridAtomicCacheQueueImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridAtomicCacheQueueImpl.java
index b433887..58d3efe 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridAtomicCacheQueueImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridAtomicCacheQueueImpl.java
@@ -55,7 +55,7 @@ public class GridAtomicCacheQueueImpl<T> extends GridCacheQueueAdapter<T> {
checkRemoved(idx);
- GridCacheQueueItemKey key = itemKey(idx);
+ QueueItemKey key = itemKey(idx);
cache.getAndPut(key, item);
@@ -78,7 +78,7 @@ public class GridAtomicCacheQueueImpl<T> extends GridCacheQueueAdapter<T> {
checkRemoved(idx);
- GridCacheQueueItemKey key = itemKey(idx);
+ QueueItemKey key = itemKey(idx);
T data = (T)cache.getAndRemove(key);
@@ -115,7 +115,7 @@ public class GridAtomicCacheQueueImpl<T> extends GridCacheQueueAdapter<T> {
checkRemoved(idx);
- Map<GridCacheQueueItemKey, T> putMap = new HashMap<>();
+ Map<QueueItemKey, T> putMap = new HashMap<>();
for (T item : items) {
putMap.put(itemKey(idx), item);
@@ -140,7 +140,7 @@ public class GridAtomicCacheQueueImpl<T> extends GridCacheQueueAdapter<T> {
if (idx != null) {
checkRemoved(idx);
- GridCacheQueueItemKey key = itemKey(idx);
+ QueueItemKey key = itemKey(idx);
if (cache.remove(key))
return;
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueAdapter.java
index df1bd88..ca0250d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueAdapter.java
@@ -58,9 +58,6 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
protected static final long QUEUE_REMOVED_IDX = Long.MIN_VALUE;
/** */
- protected static final long RETRY_DELAY = 1;
-
- /** */
private static final int DFLT_CLEAR_BATCH_SIZE = 100;
/** Logger. */
@@ -98,6 +95,9 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
@GridToStringExclude
private final Semaphore writeSem;
+ /** */
+ private final boolean binaryMarsh;
+
/**
* @param queueName Queue name.
* @param hdr Queue hdr.
@@ -112,6 +112,7 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
collocated = hdr.collocated();
queueKey = new GridCacheQueueHeaderKey(queueName);
cache = cctx.kernalContext().cache().internalCache(cctx.name());
+ binaryMarsh = cctx.binaryMarshaller();
log = cctx.logger(getClass());
@@ -369,7 +370,7 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
checkRemoved(t.get1());
- removeKeys(cache, id, queueName, collocated, t.get1(), t.get2(), batchSize);
+ removeKeys(cache, id, queueName, collocated, binaryMarsh, t.get1(), t.get2(), batchSize);
}
catch (IgniteCheckedException e) {
throw U.convertException(e);
@@ -407,6 +408,7 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
* @param id Queue unique ID.
* @param name Queue name.
* @param collocated Collocation flag.
+ * @param binaryMarsh {@code True} if binary marshaller is configured.
* @param startIdx Start item index.
* @param endIdx End item index.
* @param batchSize Batch size.
@@ -418,14 +420,15 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
IgniteUuid id,
String name,
boolean collocated,
+ boolean binaryMarsh,
long startIdx,
long endIdx,
int batchSize)
throws IgniteCheckedException {
- Set<GridCacheQueueItemKey> keys = new HashSet<>(batchSize > 0 ? batchSize : 10);
+ Set<QueueItemKey> keys = new HashSet<>(batchSize > 0 ? batchSize : 10);
for (long idx = startIdx; idx < endIdx; idx++) {
- keys.add(itemKey(id, name, collocated, idx));
+ keys.add(itemKey(id, name, collocated, binaryMarsh, idx));
if (batchSize > 0 && keys.size() == batchSize) {
cache.removeAll(keys);
@@ -536,8 +539,8 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
* @param idx Item index.
* @return Item key.
*/
- protected GridCacheQueueItemKey itemKey(Long idx) {
- return itemKey(id, queueName, collocated(), idx);
+ protected QueueItemKey itemKey(Long idx) {
+ return itemKey(id, queueName, collocated(), binaryMarsh, idx);
}
/** {@inheritDoc} */
@@ -558,11 +561,18 @@ public abstract class GridCacheQueueAdapter<T> extends AbstractCollection<T> imp
* @param id Queue unique ID.
* @param queueName Queue name.
* @param collocated Collocation flag.
+ * @param binaryMarsh {@code True} if binary marshaller is configured.
* @param idx Item index.
* @return Item key.
*/
- private static GridCacheQueueItemKey itemKey(IgniteUuid id, String queueName, boolean collocated, long idx) {
- return collocated ? new CollocatedItemKey(id, queueName, idx) : new GridCacheQueueItemKey(id, queueName, idx);
+ private static QueueItemKey itemKey(IgniteUuid id,
+ String queueName,
+ boolean collocated,
+ boolean binaryMarsh,
+ long idx) {
+ return collocated ?
+ (binaryMarsh ? new CollocatedQueueItemKey(id, queueName, idx) : new CollocatedItemKey(id, queueName, idx)) :
+ new GridCacheQueueItemKey(id, queueName, idx);
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueItemKey.java
index c4cb7b1..df47e73 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueItemKey.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheQueueItemKey.java
@@ -21,7 +21,6 @@ import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.apache.ignite.internal.processors.cache.GridCacheInternal;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteUuid;
@@ -29,7 +28,7 @@ import org.apache.ignite.lang.IgniteUuid;
/**
* Queue item key.
*/
-class GridCacheQueueItemKey implements Externalizable, GridCacheInternal {
+class GridCacheQueueItemKey implements Externalizable, QueueItemKey {
/** */
private static final long serialVersionUID = 0L;
@@ -110,11 +109,11 @@ class GridCacheQueueItemKey implements Externalizable, GridCacheInternal {
/** {@inheritDoc} */
@Override public int hashCode() {
- int result = queueId.hashCode();
+ int res = queueId.hashCode();
- result = 31 * result + (int)(idx ^ (idx >>> 32));
+ res = 31 * res + (int)(idx ^ (idx >>> 32));
- return result;
+ return res;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetImpl.java
index 62eab61..f25e361 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetImpl.java
@@ -66,7 +66,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
private final GridCacheContext ctx;
/** Cache. */
- private final IgniteInternalCache<GridCacheSetItemKey, Boolean> cache;
+ private final IgniteInternalCache<SetItemKey, Boolean> cache;
/** Logger. */
private final IgniteLogger log;
@@ -86,6 +86,9 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
/** Removed flag. */
private volatile boolean rmvd;
+ /** */
+ private final boolean binaryMarsh;
+
/**
* @param ctx Cache context.
* @param name Set name.
@@ -97,6 +100,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
this.name = name;
id = hdr.id();
collocated = hdr.collocated();
+ binaryMarsh = ctx.binaryMarshaller();
cache = ctx.cache();
@@ -140,7 +144,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
onAccess();
if (ctx.isLocal() || ctx.isReplicated()) {
- GridConcurrentHashSet<GridCacheSetItemKey> set = ctx.dataStructures().setData(id);
+ GridConcurrentHashSet<SetItemKey> set = ctx.dataStructures().setData(id);
return set != null ? set.size() : 0;
}
@@ -171,7 +175,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
@Override public boolean isEmpty() {
onAccess();
- GridConcurrentHashSet<GridCacheSetItemKey> set = ctx.dataStructures().setData(id);
+ GridConcurrentHashSet<SetItemKey> set = ctx.dataStructures().setData(id);
return (set == null || set.isEmpty()) && size() == 0;
}
@@ -180,7 +184,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
@Override public boolean contains(Object o) {
onAccess();
- final GridCacheSetItemKey key = itemKey(o);
+ final SetItemKey key = itemKey(o);
return retry(new Callable<Boolean>() {
@Override public Boolean call() throws Exception {
@@ -193,7 +197,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
@Override public boolean add(T o) {
onAccess();
- final GridCacheSetItemKey key = itemKey(o);
+ final SetItemKey key = itemKey(o);
return retry(new Callable<Boolean>() {
@Override public Boolean call() throws Exception {
@@ -206,7 +210,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
@Override public boolean remove(Object o) {
onAccess();
- final GridCacheSetItemKey key = itemKey(o);
+ final SetItemKey key = itemKey(o);
return retry(new Callable<Boolean>() {
@Override public Boolean call() throws Exception {
@@ -231,7 +235,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
boolean add = false;
- Map<GridCacheSetItemKey, Boolean> addKeys = null;
+ Map<SetItemKey, Boolean> addKeys = null;
for (T obj : c) {
if (add) {
@@ -247,7 +251,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
}
}
else
- add |= add(obj);
+ add = add(obj);
}
if (!F.isEmpty(addKeys))
@@ -262,7 +266,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
boolean rmv = false;
- Set<GridCacheSetItemKey> rmvKeys = null;
+ Set<SetItemKey> rmvKeys = null;
for (Object obj : c) {
if (rmv) {
@@ -278,7 +282,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
}
}
else
- rmv |= remove(obj);
+ rmv = remove(obj);
}
if (!F.isEmpty(rmvKeys))
@@ -295,7 +299,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
try (GridCloseableIterator<T> iter = iterator0()) {
boolean rmv = false;
- Set<GridCacheSetItemKey> rmvKeys = null;
+ Set<SetItemKey> rmvKeys = null;
for (T val : iter) {
if (!c.contains(val)) {
@@ -331,7 +335,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
onAccess();
try (GridCloseableIterator<T> iter = iterator0()) {
- Collection<GridCacheSetItemKey> rmvKeys = new ArrayList<>(BATCH_SIZE);
+ Collection<SetItemKey> rmvKeys = new ArrayList<>(BATCH_SIZE);
for (T val : iter) {
rmvKeys.add(itemKey(val));
@@ -425,7 +429,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
/**
* @param keys Keys to remove.
*/
- private void retryRemoveAll(final Collection<GridCacheSetItemKey> keys) {
+ private void retryRemoveAll(final Collection<SetItemKey> keys) {
retry(new Callable<Void>() {
@Override public Void call() throws Exception {
cache.removeAll(keys);
@@ -438,7 +442,7 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
/**
* @param keys Keys to remove.
*/
- private void retryPutAll(final Map<GridCacheSetItemKey, Boolean> keys) {
+ private void retryPutAll(final Map<SetItemKey, Boolean> keys) {
retry(new Callable<Void>() {
@Override public Void call() throws Exception {
cache.putAll(keys);
@@ -523,8 +527,9 @@ public class GridCacheSetImpl<T> extends AbstractCollection<T> implements Ignite
* @param item Set item.
* @return Item key.
*/
- private GridCacheSetItemKey itemKey(Object item) {
- return collocated ? new CollocatedItemKey(name, id, item) : new GridCacheSetItemKey(id, item);
+ private SetItemKey itemKey(Object item) {
+ return collocated ? (binaryMarsh ? new CollocatedSetItemKey(name, id, item) : new CollocatedItemKey(name, id, item))
+ : new GridCacheSetItemKey(id, item);
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetItemKey.java
index d025dce..8b47b3d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetItemKey.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheSetItemKey.java
@@ -21,7 +21,6 @@ import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.apache.ignite.internal.processors.cache.GridCacheInternal;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -30,7 +29,7 @@ import org.apache.ignite.lang.IgniteUuid;
/**
* Set item key.
*/
-public class GridCacheSetItemKey implements GridCacheInternal, Externalizable {
+public class GridCacheSetItemKey implements SetItemKey, Externalizable {
/** */
private static final long serialVersionUID = 0L;
@@ -57,27 +56,23 @@ public class GridCacheSetItemKey implements GridCacheInternal, Externalizable {
this.item = item;
}
- /**
- * @return Set UUID.
- */
- public IgniteUuid setId() {
+ /** {@inheritDoc} */
+ @Override public IgniteUuid setId() {
return setId;
}
- /**
- * @return Set item.
- */
- public Object item() {
+ /** {@inheritDoc} */
+ @Override public Object item() {
return item;
}
/** {@inheritDoc} */
@Override public int hashCode() {
- int result = setId.hashCode();
+ int res = setId.hashCode();
- result = 31 * result + item.hashCode();
+ res = 31 * res + item.hashCode();
- return result;
+ return res;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridTransactionalCacheQueueImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridTransactionalCacheQueueImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridTransactionalCacheQueueImpl.java
index 4880324..32e94d3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridTransactionalCacheQueueImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridTransactionalCacheQueueImpl.java
@@ -143,7 +143,7 @@ public class GridTransactionalCacheQueueImpl<T> extends GridCacheQueueAdapter<T>
if (idx != null) {
checkRemoved(idx);
- Map<GridCacheQueueItemKey, T> putMap = new HashMap<>();
+ Map<QueueItemKey, T> putMap = new HashMap<>();
for (T item : items) {
putMap.put(itemKey(idx), item);
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/QueueItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/QueueItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/QueueItemKey.java
new file mode 100644
index 0000000..fe0cef3
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/QueueItemKey.java
@@ -0,0 +1,27 @@
+/*
+ * 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.datastructures;
+
+import org.apache.ignite.internal.processors.cache.GridCacheInternal;
+
+/**
+ *
+ */
+public interface QueueItemKey extends GridCacheInternal {
+ // No-op.
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/SetItemKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/SetItemKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/SetItemKey.java
new file mode 100644
index 0000000..759945a
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/SetItemKey.java
@@ -0,0 +1,36 @@
+/*
+ * 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.datastructures;
+
+import org.apache.ignite.internal.processors.cache.GridCacheInternal;
+import org.apache.ignite.lang.IgniteUuid;
+
+/**
+ *
+ */
+public interface SetItemKey extends GridCacheInternal {
+ /**
+ * @return Set UUID.
+ */
+ public IgniteUuid setId();
+
+ /**
+ * @return Set item.
+ */
+ public Object item();
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java
index b881d90..51a70b9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java
@@ -22,6 +22,7 @@ import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.Callable;
@@ -139,6 +140,31 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
tx = startTx(txMode);
+ TestValue testVal = cache.invoke(key, new UserClassValueProcessor());
+
+ if (tx != null)
+ tx.commit();
+
+ assertEquals("63", testVal.value());
+
+ checkValue(key, 63);
+
+ tx = startTx(txMode);
+
+ Collection<TestValue> testValCol = cache.invoke(key, new CollectionReturnProcessor());
+
+ if (tx != null)
+ tx.commit();
+
+ assertEquals(10, testValCol.size());
+
+ for (TestValue val : testValCol)
+ assertEquals("64", val.value());
+
+ checkValue(key, 63);
+
+ tx = startTx(txMode);
+
GridTestUtils.assertThrows(log, new Callable<Void>() {
@Override public Void call() throws Exception {
cache.invoke(key, new ExceptionProcessor(63));
@@ -237,166 +263,226 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
IncrementProcessor incProcessor = new IncrementProcessor();
- Transaction tx = startTx(txMode);
+ {
+ Transaction tx = startTx(txMode);
- Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(keys, incProcessor);
+ Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(keys, incProcessor);
- if (tx != null)
- tx.commit();
+ if (tx != null)
+ tx.commit();
- Map<Object, Object> exp = new HashMap<>();
+ Map<Object, Object> exp = new HashMap<>();
- for (Integer key : keys)
- exp.put(key, -1);
+ for (Integer key : keys)
+ exp.put(key, -1);
- checkResult(resMap, exp);
+ checkResult(resMap, exp);
- for (Integer key : keys)
- checkValue(key, 1);
+ for (Integer key : keys)
+ checkValue(key, 1);
+ }
- tx = startTx(txMode);
+ {
+ Transaction tx = startTx(txMode);
- resMap = cache.invokeAll(keys, incProcessor);
+ Map<Integer, EntryProcessorResult<TestValue>> resMap = cache.invokeAll(keys, new UserClassValueProcessor());
- if (tx != null)
- tx.commit();
+ if (tx != null)
+ tx.commit();
- exp = new HashMap<>();
+ Map<Object, Object> exp = new HashMap<>();
- for (Integer key : keys)
- exp.put(key, 1);
+ for (Integer key : keys)
+ exp.put(key, new TestValue("1"));
- checkResult(resMap, exp);
+ checkResult(resMap, exp);
- for (Integer key : keys)
- checkValue(key, 2);
+ for (Integer key : keys)
+ checkValue(key, 1);
+ }
- tx = startTx(txMode);
+ {
+ Transaction tx = startTx(txMode);
- resMap = cache.invokeAll(keys, new ArgumentsSumProcessor(), 10, 20, 30);
+ Map<Integer, EntryProcessorResult<Collection<TestValue>>> resMap =
+ cache.invokeAll(keys, new CollectionReturnProcessor());
- if (tx != null)
- tx.commit();
+ if (tx != null)
+ tx.commit();
- for (Integer key : keys)
- exp.put(key, 3);
+ Map<Object, Object> exp = new HashMap<>();
- checkResult(resMap, exp);
+ for (Integer key : keys) {
+ List<TestValue> expCol = new ArrayList<>();
- for (Integer key : keys)
- checkValue(key, 62);
+ for (int i = 0; i < 10; i++)
+ expCol.add(new TestValue("2"));
- tx = startTx(txMode);
+ exp.put(key, expCol);
+ }
- resMap = cache.invokeAll(keys, new ExceptionProcessor(null));
+ checkResult(resMap, exp);
- if (tx != null)
- tx.commit();
+ for (Integer key : keys)
+ checkValue(key, 1);
+ }
- for (Integer key : keys) {
- final EntryProcessorResult<Integer> res = resMap.get(key);
+ {
+ Transaction tx = startTx(txMode);
- assertNotNull("No result for " + key);
+ Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(keys, incProcessor);
- GridTestUtils.assertThrows(log, new Callable<Void>() {
- @Override public Void call() throws Exception {
- res.get();
+ if (tx != null)
+ tx.commit();
- return null;
- }
- }, EntryProcessorException.class, "Test processor exception.");
+ Map<Object, Object> exp = new HashMap<>();
+
+ for (Integer key : keys)
+ exp.put(key, 1);
+
+ checkResult(resMap, exp);
+
+ for (Integer key : keys)
+ checkValue(key, 2);
}
- for (Integer key : keys)
- checkValue(key, 62);
+ {
+ Transaction tx = startTx(txMode);
- tx = startTx(txMode);
+ Map<Integer, EntryProcessorResult<Integer>> resMap =
+ cache.invokeAll(keys, new ArgumentsSumProcessor(), 10, 20, 30);
- Map<Integer, EntryProcessor<Integer, Integer, Integer>> invokeMap = new HashMap<>();
+ if (tx != null)
+ tx.commit();
+
+ Map<Object, Object> exp = new HashMap<>();
+
+ for (Integer key : keys)
+ exp.put(key, 3);
+
+ checkResult(resMap, exp);
+
+ for (Integer key : keys)
+ checkValue(key, 62);
+ }
+
+ {
+ Transaction tx = startTx(txMode);
- for (Integer key : keys) {
- switch (key % 4) {
- case 0: invokeMap.put(key, new IncrementProcessor()); break;
+ Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(keys, new ExceptionProcessor(null));
- case 1: invokeMap.put(key, new RemoveProcessor(62)); break;
+ if (tx != null)
+ tx.commit();
- case 2: invokeMap.put(key, new ArgumentsSumProcessor()); break;
+ for (Integer key : keys) {
+ final EntryProcessorResult<Integer> res = resMap.get(key);
- case 3: invokeMap.put(key, new ExceptionProcessor(62)); break;
+ assertNotNull("No result for " + key);
- default:
- fail();
+ GridTestUtils.assertThrows(log, new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ res.get();
+
+ return null;
+ }
+ }, EntryProcessorException.class, "Test processor exception.");
}
+
+ for (Integer key : keys)
+ checkValue(key, 62);
}
- resMap = cache.invokeAll(invokeMap, 10, 20, 30);
+ {
+ Transaction tx = startTx(txMode);
- if (tx != null)
- tx.commit();
+ Map<Integer, EntryProcessor<Integer, Integer, Integer>> invokeMap = new HashMap<>();
- for (Integer key : keys) {
- final EntryProcessorResult<Integer> res = resMap.get(key);
+ for (Integer key : keys) {
+ switch (key % 4) {
+ case 0: invokeMap.put(key, new IncrementProcessor()); break;
- switch (key % 4) {
- case 0: {
- assertNotNull("No result for " + key, res);
+ case 1: invokeMap.put(key, new RemoveProcessor(62)); break;
- assertEquals(62, (int)res.get());
+ case 2: invokeMap.put(key, new ArgumentsSumProcessor()); break;
- checkValue(key, 63);
+ case 3: invokeMap.put(key, new ExceptionProcessor(62)); break;
- break;
+ default:
+ fail();
}
+ }
- case 1: {
- assertNull(res);
+ Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(invokeMap, 10, 20, 30);
- checkValue(key, null);
+ if (tx != null)
+ tx.commit();
- break;
- }
+ for (Integer key : keys) {
+ final EntryProcessorResult<Integer> res = resMap.get(key);
- case 2: {
- assertNotNull("No result for " + key, res);
+ switch (key % 4) {
+ case 0: {
+ assertNotNull("No result for " + key, res);
- assertEquals(3, (int)res.get());
+ assertEquals(62, (int)res.get());
- checkValue(key, 122);
+ checkValue(key, 63);
- break;
- }
+ break;
+ }
+
+ case 1: {
+ assertNull(res);
+
+ checkValue(key, null);
+
+ break;
+ }
+
+ case 2: {
+ assertNotNull("No result for " + key, res);
+
+ assertEquals(3, (int)res.get());
+
+ checkValue(key, 122);
- case 3: {
- assertNotNull("No result for " + key, res);
+ break;
+ }
- GridTestUtils.assertThrows(log, new Callable<Void>() {
- @Override public Void call() throws Exception {
- res.get();
+ case 3: {
+ assertNotNull("No result for " + key, res);
- return null;
- }
- }, EntryProcessorException.class, "Test processor exception.");
+ GridTestUtils.assertThrows(log, new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ res.get();
- checkValue(key, 62);
+ return null;
+ }
+ }, EntryProcessorException.class, "Test processor exception.");
- break;
+ checkValue(key, 62);
+
+ break;
+ }
}
}
}
cache.invokeAll(keys, new IncrementProcessor());
- tx = startTx(txMode);
+ {
+ Transaction tx = startTx(txMode);
- resMap = cache.invokeAll(keys, new RemoveProcessor(null));
+ Map<Integer, EntryProcessorResult<Integer>> resMap = cache.invokeAll(keys, new RemoveProcessor(null));
- if (tx != null)
- tx.commit();
+ if (tx != null)
+ tx.commit();
- assertEquals("Unexpected results: " + resMap, 0, resMap.size());
+ assertEquals("Unexpected results: " + resMap, 0, resMap.size());
- for (Integer key : keys)
- checkValue(key, null);
+ for (Integer key : keys)
+ checkValue(key, null);
+ }
IgniteCache<Integer, Integer> asyncCache = cache.withAsync();
@@ -406,9 +492,9 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
IgniteFuture<Map<Integer, EntryProcessorResult<Integer>>> fut = asyncCache.future();
- resMap = fut.get();
+ Map<Integer, EntryProcessorResult<Integer>> resMap = fut.get();
- exp = new HashMap<>();
+ Map<Object, Object> exp = new HashMap<>();
for (Integer key : keys)
exp.put(key, -1);
@@ -418,7 +504,7 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
for (Integer key : keys)
checkValue(key, 1);
- invokeMap = new HashMap<>();
+ Map<Integer, EntryProcessor<Integer, Integer, Integer>> invokeMap = new HashMap<>();
for (Integer key : keys)
invokeMap.put(key, incProcessor);
@@ -442,15 +528,16 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
* @param resMap Result map.
* @param exp Expected results.
*/
- private void checkResult(Map<Integer, EntryProcessorResult<Integer>> resMap, Map<Object, Object> exp) {
+ @SuppressWarnings("unchecked")
+ private void checkResult(Map resMap, Map<Object, Object> exp) {
assertNotNull(resMap);
assertEquals(exp.size(), resMap.size());
for (Map.Entry<Object, Object> expVal : exp.entrySet()) {
- EntryProcessorResult<Integer> res = resMap.get(expVal.getKey());
+ EntryProcessorResult<?> res = (EntryProcessorResult)resMap.get(expVal.getKey());
- assertNotNull("No result for " + expVal.getKey());
+ assertNotNull("No result for " + expVal.getKey(), res);
assertEquals("Unexpected result for " + expVal.getKey(), res.get(), expVal.getValue());
}
@@ -557,6 +644,44 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
/**
*
*/
+ protected static class UserClassValueProcessor implements EntryProcessor<Integer, Integer, TestValue> {
+ /** {@inheritDoc} */
+ @Override public TestValue process(MutableEntry<Integer, Integer> e, Object... arguments)
+ throws EntryProcessorException {
+ return new TestValue(String.valueOf(e.getValue()));
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(UserClassValueProcessor.class, this);
+ }
+ }
+
+ /**
+ *
+ */
+ protected static class CollectionReturnProcessor implements
+ EntryProcessor<Integer, Integer, Collection<TestValue>> {
+ /** {@inheritDoc} */
+ @Override public Collection<TestValue> process(MutableEntry<Integer, Integer> e, Object... arguments)
+ throws EntryProcessorException {
+ List<TestValue> vals = new ArrayList<>();
+
+ for (int i = 0; i < 10; i++)
+ vals.add(new TestValue(String.valueOf(e.getValue() + 1)));
+
+ return vals;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(CollectionReturnProcessor.class, this);
+ }
+ }
+
+ /**
+ *
+ */
protected static class IncrementProcessor implements EntryProcessor<Integer, Integer, Integer> {
/** {@inheritDoc} */
@Override public Integer process(MutableEntry<Integer, Integer> e,
@@ -656,4 +781,50 @@ public abstract class IgniteCacheInvokeAbstractTest extends IgniteCacheAbstractT
return S.toString(ExceptionProcessor.class, this);
}
}
+
+ /**
+ *
+ */
+ static class TestValue {
+ /** */
+ private String val;
+
+ /**
+ * @param val Value.
+ */
+ public TestValue(String val) {
+ this.val = val;
+ }
+
+ /**
+ * @return Value.
+ */
+ public String value() {
+ return val;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean equals(Object o) {
+ if (this == o)
+ return true;
+
+ if (o == null || getClass() != o.getClass())
+ return false;
+
+ TestValue testVal = (TestValue) o;
+
+ return val.equals(testVal.val);
+
+ }
+
+ /** {@inheritDoc} */
+ @Override public int hashCode() {
+ return val.hashCode();
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(TestValue.class, this);
+ }
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
index 2751de1..ef96d9f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
@@ -170,11 +170,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig
while (U.currentTimeMillis() < stopTime)
assertEquals(10, atomic.get());
}
- catch (IgniteException e) {
- if (X.hasCause(e, ClusterTopologyServerNotFoundException.class))
- return;
-
- throw e;
+ catch (IgniteException ignore) {
+ return; // Test that client does not hang.
}
fail();
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheQueueApiSelfAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheQueueApiSelfAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheQueueApiSelfAbstractTest.java
index cf638df..6366f09 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheQueueApiSelfAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheQueueApiSelfAbstractTest.java
@@ -244,15 +244,27 @@ public abstract class GridCacheQueueApiSelfAbstractTest extends IgniteCollection
}
/**
- * JUnit.
- *
* @throws Exception If failed.
*/
public void testIterator() throws Exception {
+ checkIterator(false);
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testIteratorCollocated() throws Exception {
+ checkIterator(true);
+ }
+
+ /**
+ * @param collocated Collocated flag.
+ */
+ private void checkIterator(boolean collocated) {
// Random queue name.
String queueName = UUID.randomUUID().toString();
- IgniteQueue<String> queue = grid(0).queue(queueName, 0, config(false));
+ IgniteQueue<String> queue = grid(0).queue(queueName, 0, config(collocated));
for (int i = 0; i < 100; i++)
assert queue.add(Integer.toString(i));
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheSetFailoverAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheSetFailoverAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheSetFailoverAbstractSelfTest.java
index 74c9a4f..ca57205 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheSetFailoverAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheSetFailoverAbstractSelfTest.java
@@ -31,7 +31,7 @@ import org.apache.ignite.cache.CacheMode;
import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.IgniteKernal;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
-import org.apache.ignite.internal.processors.datastructures.GridCacheSetItemKey;
+import org.apache.ignite.internal.processors.datastructures.SetItemKey;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteUuid;
import org.apache.ignite.testframework.GridTestUtils;
@@ -183,8 +183,8 @@ public abstract class GridCacheSetFailoverAbstractSelfTest extends IgniteCollect
if (entry.hasValue()) {
cnt++;
- if (entry.key() instanceof GridCacheSetItemKey) {
- GridCacheSetItemKey setItem = (GridCacheSetItemKey)entry.key();
+ if (entry.key() instanceof SetItemKey) {
+ SetItemKey setItem = (SetItemKey)entry.key();
if (setIds.add(setItem.setId()))
log.info("Unexpected set item [setId=" + setItem.setId() +
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueApiSelfTest.java
index 2420153..de2fa07 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueApiSelfTest.java
@@ -31,6 +31,11 @@ import static org.apache.ignite.cache.CacheMode.PARTITIONED;
*/
public class GridCachePartitionedQueueApiSelfTest extends GridCacheQueueApiSelfAbstractTest {
/** {@inheritDoc} */
+ @Override protected int gridCount() {
+ return 4;
+ }
+
+ /** {@inheritDoc} */
@Override protected CacheMode collectionCacheMode() {
return PARTITIONED;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueEntryMoveSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueEntryMoveSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueEntryMoveSelfTest.java
index 1d225a6..db11291 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueEntryMoveSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedQueueEntryMoveSelfTest.java
@@ -90,7 +90,7 @@ public class GridCachePartitionedQueueEntryMoveSelfTest extends IgniteCollection
* @throws Exception If failed.
*/
public void testQueue() throws Exception {
- final String queueName = "queue-test-name";
+ final String queueName = "q";
System.out.println(U.filler(20, '\n'));
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/IgnitePartitionedQueueNoBackupsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/IgnitePartitionedQueueNoBackupsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/IgnitePartitionedQueueNoBackupsTest.java
new file mode 100644
index 0000000..880c638
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/IgnitePartitionedQueueNoBackupsTest.java
@@ -0,0 +1,92 @@
+/*
+ * 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.cache.datastructures.partitioned;
+
+import java.util.Iterator;
+import java.util.UUID;
+import org.apache.ignite.IgniteQueue;
+import org.apache.ignite.cache.CacheAtomicityMode;
+import org.apache.ignite.cache.CacheMemoryMode;
+import org.apache.ignite.cache.CacheMode;
+import org.apache.ignite.configuration.CollectionConfiguration;
+import org.apache.ignite.internal.IgniteKernal;
+import org.apache.ignite.internal.processors.cache.GridCacheContext;
+import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
+import org.apache.ignite.testframework.GridTestUtils;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.ATOMIC;
+import static org.apache.ignite.cache.CacheMemoryMode.ONHEAP_TIERED;
+import static org.apache.ignite.cache.CacheMode.PARTITIONED;
+
+/**
+ *
+ */
+public class IgnitePartitionedQueueNoBackupsTest extends GridCachePartitionedQueueApiSelfTest {
+ /** {@inheritDoc} */
+ @Override protected CacheMode collectionCacheMode() {
+ return PARTITIONED;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected CacheMemoryMode collectionMemoryMode() {
+ return ONHEAP_TIERED;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected CacheAtomicityMode collectionCacheAtomicityMode() {
+ return ATOMIC;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected CollectionConfiguration collectionConfiguration() {
+ CollectionConfiguration colCfg = super.collectionConfiguration();
+
+ colCfg.setBackups(0);
+
+ return colCfg;
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testCollocation() throws Exception {
+ IgniteQueue<Integer> queue = grid(0).queue("queue", 0, config(true));
+
+ for (int i = 0; i < 1000; i++)
+ assertTrue(queue.add(i));
+
+ assertEquals(1000, queue.size());
+
+ GridCacheContext cctx = GridTestUtils.getFieldValue(queue, "cctx");
+
+ UUID setNodeId = null;
+
+ for (int i = 0; i < gridCount(); i++) {
+ IgniteKernal grid = (IgniteKernal)grid(i);
+
+ Iterator<GridCacheEntryEx> entries =
+ grid.context().cache().internalCache(cctx.name()).map().allEntries0().iterator();
+
+ if (entries.hasNext()) {
+ if (setNodeId == null)
+ setNodeId = grid.localNode().id();
+ else
+ fail("For collocated queue all items should be stored on single node.");
+ }
+ }
+ }}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/replicated/GridCacheReplicatedQueueApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/replicated/GridCacheReplicatedQueueApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/replicated/GridCacheReplicatedQueueApiSelfTest.java
index 1aea6d9..bad37a9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/replicated/GridCacheReplicatedQueueApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/replicated/GridCacheReplicatedQueueApiSelfTest.java
@@ -31,6 +31,11 @@ import static org.apache.ignite.cache.CacheMode.REPLICATED;
*/
public class GridCacheReplicatedQueueApiSelfTest extends GridCacheQueueApiSelfAbstractTest {
/** {@inheritDoc} */
+ @Override protected int gridCount() {
+ return 4;
+ }
+
+ /** {@inheritDoc} */
@Override protected CacheMode collectionCacheMode() {
return REPLICATED;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/50f6c013/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStoreAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStoreAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStoreAbstractTest.java
index 4a5141e..e9674f3 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStoreAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStoreAbstractTest.java
@@ -114,7 +114,7 @@ public abstract class GridCacheWriteBehindStoreAbstractTest extends GridCommonAb
Map<Integer, String> map = store.getMap();
- assert map.isEmpty();
+ assert map.isEmpty() : map;
Transaction tx = grid().transactions().txStart(OPTIMISTIC, REPEATABLE_READ);
[20/50] [abbrv] ignite git commit: version fix
Posted by sb...@apache.org.
version fix
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3ac1504d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3ac1504d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3ac1504d
Branch: refs/heads/master
Commit: 3ac1504d6e46daf4322b0bc9c4411b0f26c3a4aa
Parents: 2564a55
Author: Anton Vinogradov <av...@apache.org>
Authored: Tue Dec 1 18:33:23 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Tue Dec 1 18:33:23 2015 +0300
----------------------------------------------------------------------
examples/pom.xml | 2 +-
examples/schema-import/pom.xml | 2 +-
modules/aop/pom.xml | 2 +-
modules/apache-license-gen/pom.xml | 2 +-
modules/aws/pom.xml | 2 +-
modules/camel/pom.xml | 2 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 2 +-
modules/core/src/main/resources/ignite.properties | 2 +-
modules/extdata/p2p/pom.xml | 2 +-
modules/extdata/uri/modules/uri-dependency/pom.xml | 2 +-
modules/extdata/uri/pom.xml | 2 +-
modules/flume/pom.xml | 2 +-
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/jms11/pom.xml | 2 +-
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/log4j2/pom.xml | 2 +-
modules/mesos/pom.xml | 2 +-
modules/mqtt/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 +-
modules/slf4j/pom.xml | 2 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
modules/ssh/pom.xml | 2 +-
modules/tools/pom.xml | 2 +-
modules/twitter/pom.xml | 2 +-
modules/urideploy/pom.xml | 2 +-
modules/visor-console-2.10/pom.xml | 2 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 2 +-
modules/yardstick/pom.xml | 2 +-
modules/yarn/pom.xml | 2 +-
modules/zookeeper/pom.xml | 2 +-
pom.xml | 2 +-
49 files changed, 49 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index c018e1e..e7cd059 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -28,7 +28,7 @@
</parent>
<artifactId>ignite-examples</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/examples/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/examples/schema-import/pom.xml b/examples/schema-import/pom.xml
index d4eb3b3..a6b635c 100644
--- a/examples/schema-import/pom.xml
+++ b/examples/schema-import/pom.xml
@@ -35,7 +35,7 @@
</properties>
<artifactId>ignite-schema-import-demo</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index 850af76..f410f65 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aop</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/apache-license-gen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/apache-license-gen/pom.xml b/modules/apache-license-gen/pom.xml
index c27595b..6d3c985 100644
--- a/modules/apache-license-gen/pom.xml
+++ b/modules/apache-license-gen/pom.xml
@@ -31,7 +31,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-apache-license-gen</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index 70bf9da..53979cb 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aws</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/camel/pom.xml b/modules/camel/pom.xml
index a6ff52b..328780a 100644
--- a/modules/camel/pom.xml
+++ b/modules/camel/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-camel</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index af9b718..5ab61d4 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-clients</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/cloud/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cloud/pom.xml b/modules/cloud/pom.xml
index 781e71f..783fa68 100644
--- a/modules/cloud/pom.xml
+++ b/modules/cloud/pom.xml
@@ -29,7 +29,7 @@
</parent>
<artifactId>ignite-cloud</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/codegen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/codegen/pom.xml b/modules/codegen/pom.xml
index 0fc90cd..2a58e3f 100644
--- a/modules/codegen/pom.xml
+++ b/modules/codegen/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-codegen</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 1fe5df4..907c553 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-core</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<repositories>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/core/src/main/resources/ignite.properties
----------------------------------------------------------------------
diff --git a/modules/core/src/main/resources/ignite.properties b/modules/core/src/main/resources/ignite.properties
index f0cbfdc..edf7d3c 100644
--- a/modules/core/src/main/resources/ignite.properties
+++ b/modules/core/src/main/resources/ignite.properties
@@ -15,7 +15,7 @@
# limitations under the License.
#
-ignite.version=1.5.0-EA1-SNAPSHOT
+ignite.version=1.5.0-b1-SNAPSHOT
ignite.build=0
ignite.revision=DEV
ignite.rel.date=01011970
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/extdata/p2p/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/p2p/pom.xml b/modules/extdata/p2p/pom.xml
index 1526269..de8eed5 100644
--- a/modules/extdata/p2p/pom.xml
+++ b/modules/extdata/p2p/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-extdata-p2p</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/extdata/uri/modules/uri-dependency/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/modules/uri-dependency/pom.xml b/modules/extdata/uri/modules/uri-dependency/pom.xml
index 7a38ce5..972f61a 100644
--- a/modules/extdata/uri/modules/uri-dependency/pom.xml
+++ b/modules/extdata/uri/modules/uri-dependency/pom.xml
@@ -27,7 +27,7 @@
<artifactId>ignite-extdata-uri-dep</artifactId>
<packaging>jar</packaging>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/extdata/uri/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index ead6d4a..1176c85 100644
--- a/modules/extdata/uri/pom.xml
+++ b/modules/extdata/uri/pom.xml
@@ -32,7 +32,7 @@
</parent>
<artifactId>ignite-extdata-uri</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/flume/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flume/pom.xml b/modules/flume/pom.xml
index 9e45ee0..0768410 100644
--- a/modules/flume/pom.xml
+++ b/modules/flume/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-flume</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/gce/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gce/pom.xml b/modules/gce/pom.xml
index 4bc57b6..edab865 100644
--- a/modules/gce/pom.xml
+++ b/modules/gce/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-gce</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index bd51d64..eefe279 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-geospatial</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index cfb4bac..75a9eea 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hadoop</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index ca6912e..d5a1be4 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hibernate</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index 5e06b3f..13a11b4 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-indexing</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index d7a4f5f..a2ee45f 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jcl</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/jms11/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jms11/pom.xml b/modules/jms11/pom.xml
index fdb6f3d..4665ce9 100644
--- a/modules/jms11/pom.xml
+++ b/modules/jms11/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jms11</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index 45d66a4..4724c4f 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jta</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index a678912..b62f177 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-kafka</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index c76252c..f08217e 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/log4j2/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j2/pom.xml b/modules/log4j2/pom.xml
index e1b4b13..db351cb 100644
--- a/modules/log4j2/pom.xml
+++ b/modules/log4j2/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j2</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/mesos/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mesos/pom.xml b/modules/mesos/pom.xml
index d90f070..ee6be82 100644
--- a/modules/mesos/pom.xml
+++ b/modules/mesos/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mesos</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/mqtt/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mqtt/pom.xml b/modules/mqtt/pom.xml
index 5f3c7bf..a1ce973 100644
--- a/modules/mqtt/pom.xml
+++ b/modules/mqtt/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mqtt</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index 3608415..3dc18d3 100644
--- a/modules/rest-http/pom.xml
+++ b/modules/rest-http/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-rest-http</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 1ff53a2..83e515b 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar_2.10</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index 464d111..e78ce73 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index a3cced6..6e687a6 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schedule</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index a0353b7..2fae337 100644
--- a/modules/schema-import/pom.xml
+++ b/modules/schema-import/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schema-import</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index 964d7bc..130ea19 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-slf4j</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index 9a7ae7d..627cc49 100644
--- a/modules/spark-2.10/pom.xml
+++ b/modules/spark-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark_2.10</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/spark/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 42d1992..cb56d2c 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index 2481c3d..2e90632 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spring</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 5bb9dcb..1079c00 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-ssh</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/tools/pom.xml
----------------------------------------------------------------------
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index 9c58bb6..86adea3 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-tools</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/twitter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/twitter/pom.xml b/modules/twitter/pom.xml
index 289b315..fc924f6 100644
--- a/modules/twitter/pom.xml
+++ b/modules/twitter/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-twitter</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index 79802d1..5f2436e 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-urideploy</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/visor-console-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console-2.10/pom.xml b/modules/visor-console-2.10/pom.xml
index 3ce3104..8d1bd74 100644
--- a/modules/visor-console-2.10/pom.xml
+++ b/modules/visor-console-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console_2.10</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index 6d7a7e1..1ed21ae 100644
--- a/modules/visor-console/pom.xml
+++ b/modules/visor-console/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index 2e524f3..5cdda0c 100644
--- a/modules/visor-plugins/pom.xml
+++ b/modules/visor-plugins/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-plugins</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index 117d8ee..c97e77b 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/yardstick/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/pom.xml b/modules/yardstick/pom.xml
index 4f518ff..185dea0 100644
--- a/modules/yardstick/pom.xml
+++ b/modules/yardstick/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yardstick</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/yarn/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yarn/pom.xml b/modules/yarn/pom.xml
index e8aa436..8f9babe 100644
--- a/modules/yarn/pom.xml
+++ b/modules/yarn/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yarn</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/modules/zookeeper/pom.xml
----------------------------------------------------------------------
diff --git a/modules/zookeeper/pom.xml b/modules/zookeeper/pom.xml
index fc4ba24..8aa5730 100644
--- a/modules/zookeeper/pom.xml
+++ b/modules/zookeeper/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-zookeeper</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/3ac1504d/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index fdc4029..109dc94 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>apache-ignite</artifactId>
- <version>1.5.0-EA1-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
[06/50] [abbrv] ignite git commit: Release notes update
Posted by sb...@apache.org.
Release notes update
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/98303001
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/98303001
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/98303001
Branch: refs/heads/master
Commit: 98303001684265b3677fb663e51c4a44b9fd1707
Parents: f5e9918
Author: Anton Vinogradov <av...@apache.org>
Authored: Tue Dec 1 11:18:40 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Tue Dec 1 11:18:40 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 2 ++
1 file changed, 2 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/98303001/RELEASE_NOTES.txt
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt
index 4985edb..f7f48fa 100644
--- a/RELEASE_NOTES.txt
+++ b/RELEASE_NOTES.txt
@@ -9,6 +9,8 @@ Apache Ignite In-Memory Data Fabric 1.5
* Added new binary cache object marshalling implementation.
* Added IgniteSemaphore data structure.
* Added MQTT Streamer.
+* Added Twitter Streamer.
+* Added Ignite Sink (integration with Apache Flume).
* Fixed failover for continuous queries.
* Fixed compilation and runtime errors under OpenJDK and IBM JDK.
* Fixed Integer.size limitation for cache.
[04/50] [abbrv] ignite git commit: fixed version
Posted by sb...@apache.org.
fixed version
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ecb3cb44
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ecb3cb44
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ecb3cb44
Branch: refs/heads/master
Commit: ecb3cb445bf3ec51a67768a08db5c601459ca1ce
Parents: 6260fc1
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Nov 30 23:01:27 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Nov 30 23:01:27 2015 +0300
----------------------------------------------------------------------
modules/platforms/cpp/common/configure.ac | 2 +-
modules/platforms/cpp/core-test/configure.ac | 2 +-
modules/platforms/cpp/core/configure.ac | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
modules/platforms/cpp/ignite/configure.ac | 2 +-
.../Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 4 ++--
.../Properties/AssemblyInfo.cs | 12 ++++++------
.../Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.Core/Properties/AssemblyInfo.cs | 6 +++---
.../dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 4 ++--
.../Properties/AssemblyInfo.cs | 4 ++--
12 files changed, 24 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/cpp/common/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/common/configure.ac b/modules/platforms/cpp/common/configure.ac
index 8f53ea3..229cb9d 100644
--- a/modules/platforms/cpp/common/configure.ac
+++ b/modules/platforms/cpp/common/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite JNI bridge for C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
+AC_INIT([Apache Ignite JNI bridge for C++], [1.5.1.0], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/cpp/core-test/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/configure.ac b/modules/platforms/cpp/core-test/configure.ac
index 14baf55..1612bea 100644
--- a/modules/platforms/cpp/core-test/configure.ac
+++ b/modules/platforms/cpp/core-test/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Test], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Test], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/cpp/core/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/configure.ac b/modules/platforms/cpp/core/configure.ac
index f10eeb9..2733a46 100644
--- a/modules/platforms/cpp/core/configure.ac
+++ b/modules/platforms/cpp/core/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/cpp/examples/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/configure.ac b/modules/platforms/cpp/examples/configure.ac
index 2d30028..3ee5330 100644
--- a/modules/platforms/cpp/examples/configure.ac
+++ b/modules/platforms/cpp/examples/configure.ac
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Ingnite C++ examples],[1.5.0-EA],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
+AC_INIT([Ingnite C++ examples],[1.5.1.0],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/cpp/ignite/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/ignite/configure.ac b/modules/platforms/cpp/ignite/configure.ac
index 41d944c..70b5c82 100644
--- a/modules/platforms/cpp/ignite/configure.ac
+++ b/modules/platforms/cpp/ignite/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Runner], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Runner], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 79a980c..9819cff 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
index f967e73..098f9b4 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
@@ -27,8 +27,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
@@ -38,12 +38,12 @@ using System.Runtime.InteropServices;
// Version information for an assembly consists of the following four values:
//
// Major Version
-// Minor Version
+// Minor Version
// Build Number
// Revision
//
-// You can specify all the values or you can default the Build and Revision Numbers
+// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index 7dbe612..f2af079 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
index b6e0e5a..ffb68f5 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("97db45a8-f922-456a-a819-7b3c6e5e03ba")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
[assembly: CLSCompliant(true)]
@@ -43,4 +43,4 @@ using System.Runtime.InteropServices;
[assembly: InternalsVisibleTo("Apache.Ignite.Core.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100a5bf8e0062a26bde53ccf0f8c42ef5b122a22052f99aecacb7028adcc163050324ee3c75ff40eb0cbe2d0426fa20eca03726cad90d7eb882ff47f5361567a82b676a27565f88b2479d7b9354ae0a1e526ee781b6e11de943d8f4a49efb53765f8c954022bede0fca86c133fab038af8dc88b67d6b6e5b9796d6ca490e699efab")]
[assembly: InternalsVisibleTo("Apache.Ignite.Benchmarks, PublicKey=0024000004800000940000000602000000240000525341310004000001000100a3e0c1df4cbedbd4ed0e88808401c69b69ec12575ed1c056ac9f448e018fb29af19d236b7b03563aad66c48ab2045e72971ed098d4f65d4cdd38d65abcb39b4f84c626b22ccab2754375f0e8c97dc304fa146f0eddad5cc40a71803a8f15b0b0bb0bff0d4bf0ff6a64bb1044e0d71e6e2405b83fd4c1f7b3e2cfc2e9d50823d4")]
-#endif
\ No newline at end of file
+#endif
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index b50be27..93ee26a 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index 4e26b64..5a510a1 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ecb3cb44/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index 52f84c9..3f81834 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Reflection;
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
-[assembly: AssemblyVersion("1.5.0-EA")]
-[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1.0")]
+[assembly: AssemblyFileVersion("1.5.1.0")]
[37/50] [abbrv] ignite git commit: Fixed failover tests for binary
marshaller
Posted by sb...@apache.org.
Fixed failover tests for binary marshaller
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/171e9b17
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/171e9b17
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/171e9b17
Branch: refs/heads/master
Commit: 171e9b172564bcaafd54532abbce3b16c7ffbc65
Parents: 4ba911f
Author: ashutak <as...@gridgain.com>
Authored: Thu Dec 3 18:15:40 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Thu Dec 3 18:15:40 2015 +0300
----------------------------------------------------------------------
.../failover/IgniteTransactionalInvokeRetryBenchmark.java | 4 ++--
.../failover/IgniteTransactionalWriteInvokeBenchmark.java | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/171e9b17/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalInvokeRetryBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalInvokeRetryBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalInvokeRetryBenchmark.java
index 16b0959..b5a08da 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalInvokeRetryBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalInvokeRetryBenchmark.java
@@ -169,7 +169,7 @@ public class IgniteTransactionalInvokeRetryBenchmark extends IgniteFailoverAbstr
if (ex != null)
throw ex;
- asyncCache.invoke(key, new IncrementCacheEntryProcessor());
+ asyncCache.invoke(key, new IncrementInvokeRetryCacheEntryProcessor());
asyncCache.future().get(args.cacheOperationTimeoutMillis());
AtomicLong prevVal = map.putIfAbsent(key, new AtomicLong(0));
@@ -195,7 +195,7 @@ public class IgniteTransactionalInvokeRetryBenchmark extends IgniteFailoverAbstr
/**
*/
- private static class IncrementCacheEntryProcessor implements CacheEntryProcessor<String, Long, Long> {
+ private static class IncrementInvokeRetryCacheEntryProcessor implements CacheEntryProcessor<String, Long, Long> {
/** */
private static final long serialVersionUID = 0;
http://git-wip-us.apache.org/repos/asf/ignite/blob/171e9b17/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
index a52ea78..9f9b5f7 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/failover/IgniteTransactionalWriteInvokeBenchmark.java
@@ -123,7 +123,7 @@ public class IgniteTransactionalWriteInvokeBenchmark extends IgniteFailoverAbstr
Set<Long> values = new HashSet<>(map.values());
if (values.size() != 1)
- throw new IgniteConsistencyException("Found different values for keys [map="+map+"]");
+ throw new IgniteConsistencyException("Found different values for keys [map=" + map + "]");
break;
case 1: // Invoke scenario.
@@ -137,7 +137,7 @@ public class IgniteTransactionalWriteInvokeBenchmark extends IgniteFailoverAbstr
asyncCache.future().get(timeout);
for (String key : keys) {
- asyncCache.invoke(key, new IncrementCacheEntryProcessor(), cacheName());
+ asyncCache.invoke(key, new IncrementWriteInvokeCacheEntryProcessor(), cacheName());
Object o = asyncCache.future().get(timeout);
if (o != null)
@@ -165,7 +165,7 @@ public class IgniteTransactionalWriteInvokeBenchmark extends IgniteFailoverAbstr
/**
*/
- private static class IncrementCacheEntryProcessor implements CacheEntryProcessor<String, Long, Object> {
+ private static class IncrementWriteInvokeCacheEntryProcessor implements CacheEntryProcessor<String, Long, Object> {
/** */
private static final long serialVersionUID = 0;
[50/50] [abbrv] ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-1.5'
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-1.5'
Conflicts:
modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3fbf3e95
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3fbf3e95
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3fbf3e95
Branch: refs/heads/master
Commit: 3fbf3e9544329210c5e59be3f3ada13ac51a4482
Parents: 357d791 11b4262
Author: Anton Vinogradov <av...@apache.org>
Authored: Mon Dec 7 13:52:27 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Mon Dec 7 13:52:27 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 3 +
examples/config/example-default.xml | 7 +
examples/pom.xml | 7 +-
examples/schema-import/pom.xml | 4 +-
.../store/auto/CacheBinaryAutoStoreExample.java | 158 ++++++++
.../datagrid/store/auto/package-info.java | 22 ++
.../store/auto/CacheAutoStoreExample.java | 93 ++++-
.../auto/CacheAutoStoreLoadDataExample.java | 85 -----
.../datagrid/store/auto/CacheConfig.java | 81 ----
.../datagrid/store/auto/DbH2ServerStartup.java | 79 ----
.../ignite/examples/util/DbH2ServerStartup.java | 79 ++++
.../ignite/examples/util/package-info.java | 22 ++
modules/aop/pom.xml | 14 +-
modules/apache-license-gen/pom.xml | 2 +-
modules/aws/pom.xml | 20 +-
modules/camel/pom.xml | 16 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 30 +-
.../store/jdbc/CacheAbstractJdbcStore.java | 12 +-
.../cache/store/jdbc/CacheJdbcPojoStore.java | 9 +
.../configuration/IgniteConfiguration.java | 4 +-
.../org/apache/ignite/internal/IgnitionEx.java | 4 +-
.../ignite/internal/MarshallerContextImpl.java | 7 +-
.../GridDeploymentPerVersionStore.java | 12 +-
.../internal/portable/BinaryFieldAccessor.java | 83 ++++-
.../internal/portable/BinaryReaderExImpl.java | 13 +-
.../internal/portable/BinaryWriterExImpl.java | 5 +-
.../internal/portable/PortableContext.java | 34 +-
.../CacheDefaultBinaryAffinityKeyMapper.java | 19 +-
.../processors/cache/GridCacheAdapter.java | 8 +-
.../processors/cache/GridCacheContext.java | 67 +++-
.../GridCacheDefaultAffinityKeyMapper.java | 9 +-
.../processors/cache/GridCacheIoManager.java | 2 +-
.../processors/cache/GridCacheMapEntry.java | 6 +-
.../GridCachePartitionExchangeManager.java | 40 +-
.../processors/cache/GridCachePreloader.java | 16 +-
.../cache/GridCachePreloaderAdapter.java | 7 +-
.../processors/cache/GridCacheProcessor.java | 14 +-
.../processors/cache/GridCacheProxyImpl.java | 12 +
.../processors/cache/IgniteCacheProxy.java | 24 ++
.../processors/cache/IgniteInternalCache.java | 9 +
.../CacheDataStructuresManager.java | 31 +-
.../distributed/dht/GridDhtLockFuture.java | 17 +-
.../dht/atomic/GridDhtAtomicCache.java | 24 +-
.../dht/preloader/GridDhtPartitionDemander.java | 71 ++--
.../GridDhtPartitionsExchangeFuture.java | 9 +-
.../dht/preloader/GridDhtPreloader.java | 31 +-
.../preloader/GridDhtPreloaderAssignments.java | 19 +-
.../distributed/near/GridNearGetFuture.java | 12 +-
.../CacheObjectBinaryProcessorImpl.java | 15 +-
.../cache/query/GridCacheQueryManager.java | 12 +-
.../cache/transactions/IgniteTxHandler.java | 2 +-
.../transactions/IgniteTxLocalAdapter.java | 11 +-
.../datastructures/CollocatedQueueItemKey.java | 75 ++++
.../datastructures/CollocatedSetItemKey.java | 87 +++++
.../datastructures/DataStructuresProcessor.java | 7 +-
.../GridAtomicCacheQueueImpl.java | 8 +-
.../datastructures/GridCacheQueueAdapter.java | 30 +-
.../datastructures/GridCacheQueueItemKey.java | 9 +-
.../datastructures/GridCacheSetImpl.java | 37 +-
.../datastructures/GridCacheSetItemKey.java | 21 +-
.../GridTransactionalCacheQueueImpl.java | 2 +-
.../processors/datastructures/QueueItemKey.java | 27 ++
.../processors/datastructures/SetItemKey.java | 36 ++
.../handlers/query/QueryCommandHandler.java | 8 +-
.../ignite/internal/util/IgniteUtils.java | 8 +
.../communication/tcp/TcpCommunicationSpi.java | 18 +-
.../spi/discovery/tcp/TcpDiscoverySpi.java | 2 -
.../core/src/main/resources/ignite.properties | 2 +-
.../portable/BinaryMarshallerSelfTest.java | 186 ++++++++--
.../CachePutEventListenerErrorSelfTest.java | 35 +-
...cheAbstractFullApiMultithreadedSelfTest.java | 9 +-
.../cache/GridCacheAbstractFullApiSelfTest.java | 2 -
...eAtomicEntryProcessorDeploymentSelfTest.java | 6 +-
.../cache/GridCacheClearSelfTest.java | 9 +-
...inodeUpdateNearEnabledNoBackupsSelfTest.java | 9 +-
...CacheMultinodeUpdateNearEnabledSelfTest.java | 5 +
.../cache/IgniteCacheAbstractTest.java | 3 +
.../cache/IgniteCacheInvokeAbstractTest.java | 369 ++++++++++++++-----
.../IgniteCacheStoreValueAbstractTest.java | 111 +++---
.../cache/IgniteCacheTxPreloadNoWriteTest.java | 2 +-
...eAbstractDataStructuresFailoverSelfTest.java | 15 +-
.../GridCacheQueueApiSelfAbstractTest.java | 18 +-
.../GridCacheSetFailoverAbstractSelfTest.java | 6 +-
.../GridCachePartitionedQueueApiSelfTest.java | 5 +
...dCachePartitionedQueueEntryMoveSelfTest.java | 2 +-
.../IgnitePartitionedQueueNoBackupsTest.java | 92 +++++
.../GridCacheReplicatedQueueApiSelfTest.java | 5 +
.../CacheLockReleaseNodeLeaveTest.java | 161 ++++++++
.../dht/GridCacheDhtPreloadDelayedSelfTest.java | 37 +-
.../dht/GridCacheTxNodeFailureSelfTest.java | 2 +
.../dht/GridNearCacheTxNodeFailureSelfTest.java | 4 -
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 3 +-
...cingDelayedPartitionMapExchangeSelfTest.java | 9 +-
.../GridCacheRebalancingAsyncSelfTest.java | 3 +-
.../GridCacheRebalancingSyncCheckDataTest.java | 98 +++++
.../GridCacheRebalancingSyncSelfTest.java | 55 +--
...eRebalancingUnmarshallingFailedSelfTest.java | 19 +-
.../GridCacheLocalIsolatedNodesSelfTest.java | 6 +-
.../GridCacheWriteBehindStoreAbstractTest.java | 2 +-
.../cache/GridCacheCommandHandlerSelfTest.java | 7 +-
.../internal/util/nio/GridNioSelfTest.java | 69 ++--
.../config/GridTestProperties.java | 6 +
.../testframework/junits/GridAbstractTest.java | 15 +
...ObjectsCacheDataStructuresSelfTestSuite.java | 4 +
...BinaryObjectsCacheExpiryPolicyTestSuite.java | 4 +
...gniteBinaryObjectsCacheRestartTestSuite.java | 4 +
.../IgniteBinaryObjectsCacheTestSuite2.java | 4 +
.../IgniteBinaryObjectsCacheTestSuite3.java | 6 +
.../IgniteBinaryObjectsCacheTestSuite4.java | 4 +
...IgniteBinaryObjectsComputeGridTestSuite.java | 4 +
.../IgniteCacheDataStructuresSelfTestSuite.java | 3 +
.../testsuites/IgniteCacheTestSuite2.java | 2 +
.../testsuites/IgniteCacheTestSuite3.java | 2 +
.../IgnitePortableCacheTestSuite.java | 1 -
modules/extdata/p2p/pom.xml | 2 +-
.../extdata/uri/modules/uri-dependency/pom.xml | 2 +-
modules/extdata/uri/pom.xml | 4 +-
modules/flume/pom.xml | 21 +-
modules/gce/pom.xml | 2 +-
modules/geospatial/pom.xml | 22 +-
modules/hadoop/pom.xml | 4 +-
modules/hibernate/pom.xml | 12 +-
modules/indexing/pom.xml | 24 +-
modules/jcl/pom.xml | 13 +-
modules/jms11/pom.xml | 22 +-
modules/jta/pom.xml | 19 +-
modules/kafka/pom.xml | 18 +-
modules/log4j/pom.xml | 12 +-
modules/log4j2/pom.xml | 13 +-
modules/mesos/pom.xml | 2 +-
modules/mqtt/pom.xml | 29 +-
modules/osgi-karaf/README.txt | 18 +
modules/osgi-karaf/licenses/apache-2.0.txt | 202 ++++++++++
modules/osgi-karaf/pom.xml | 84 +++++
.../osgi-karaf/src/main/resources/features.xml | 327 ++++++++++++++++
modules/osgi-paxlogging/README.txt | 12 +
modules/osgi-paxlogging/licenses/apache-2.0.txt | 202 ++++++++++
modules/osgi-paxlogging/pom.xml | 69 ++++
modules/osgi/README.txt | 65 ++++
modules/osgi/licenses/apache-2.0.txt | 202 ++++++++++
modules/osgi/pom.xml | 171 +++++++++
.../IgniteAbstractOsgiContextActivator.java | 238 ++++++++++++
.../org/apache/ignite/osgi/IgniteOsgiUtils.java | 69 ++++
.../BundleDelegatingClassLoader.java | 147 ++++++++
.../classloaders/ContainerSweepClassLoader.java | 134 +++++++
.../OsgiClassLoadingStrategyType.java | 29 ++
.../ignite/osgi/AbstractIgniteKarafTest.java | 109 ++++++
.../IgniteKarafFeaturesInstallationTest.java | 100 +++++
.../ignite/osgi/IgniteOsgiServiceTest.java | 131 +++++++
.../apache/ignite/osgi/IgniteOsgiTestSuite.java | 32 ++
.../activators/BasicIgniteTestActivator.java | 76 ++++
.../ignite/osgi/activators/TestOsgiFlags.java | 53 +++
.../osgi/activators/TestOsgiFlagsImpl.java | 83 +++++
modules/platforms/cpp/common/configure.ac | 2 +-
modules/platforms/cpp/core-test/configure.ac | 2 +-
modules/platforms/cpp/core/configure.ac | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
modules/platforms/cpp/ignite/configure.ac | 2 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 12 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 6 +-
.../Apache.Ignite/Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
modules/rest-http/pom.xml | 36 +-
modules/scalar-2.10/pom.xml | 11 +-
modules/scalar/pom.xml | 11 +-
modules/schedule/pom.xml | 27 +-
modules/schema-import/pom.xml | 4 +-
.../ignite/schema/ui/SchemaImportApp.java | 14 +
modules/slf4j/pom.xml | 14 +-
modules/spark-2.10/pom.xml | 4 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 32 +-
modules/ssh/pom.xml | 21 +-
modules/tools/pom.xml | 2 +-
modules/twitter/pom.xml | 17 +-
modules/urideploy/pom.xml | 19 +-
modules/visor-console-2.10/pom.xml | 6 +-
modules/visor-console/pom.xml | 4 +-
modules/visor-plugins/pom.xml | 6 +-
modules/web/pom.xml | 15 +-
modules/yardstick/pom.xml | 6 +-
.../yardstick/cache/IgnitePutTxBenchmark.java | 26 +-
...IgniteTransactionalInvokeRetryBenchmark.java | 4 +-
...IgniteTransactionalWriteInvokeBenchmark.java | 22 +-
modules/yarn/pom.xml | 2 +-
modules/zookeeper/pom.xml | 16 +-
parent/pom.xml | 140 ++++++-
pom.xml | 46 ++-
194 files changed, 5515 insertions(+), 1012 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3fbf3e95/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java
----------------------------------------------------------------------
[45/50] [abbrv] ignite git commit: ignite-1.5 - release notes
Posted by sb...@apache.org.
ignite-1.5 - release notes
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/23ead500
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/23ead500
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/23ead500
Branch: refs/heads/master
Commit: 23ead500762095300417759a30c08cd76daf210d
Parents: 92ef7c7
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Fri Dec 4 17:28:50 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Fri Dec 4 17:28:50 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 1 +
1 file changed, 1 insertion(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/23ead500/RELEASE_NOTES.txt
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt
index f7f48fa..243ec18 100644
--- a/RELEASE_NOTES.txt
+++ b/RELEASE_NOTES.txt
@@ -11,6 +11,7 @@ Apache Ignite In-Memory Data Fabric 1.5
* Added MQTT Streamer.
* Added Twitter Streamer.
* Added Ignite Sink (integration with Apache Flume).
+* Fixed optimistic serializable transactions: implemented "deadlock-free" locking algorithm.
* Fixed failover for continuous queries.
* Fixed compilation and runtime errors under OpenJDK and IBM JDK.
* Fixed Integer.size limitation for cache.
[03/50] [abbrv] ignite git commit: 1.5.0-EA-SNAPSHOT
Posted by sb...@apache.org.
1.5.0-EA-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6260fc1f
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6260fc1f
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6260fc1f
Branch: refs/heads/master
Commit: 6260fc1fc80cc77cc9a0ef776640845b979b27b3
Parents: fcbc6d0
Author: Ignite Teamcity <ig...@apache.org>
Authored: Mon Nov 30 19:42:45 2015 +0300
Committer: Ignite Teamcity <ig...@apache.org>
Committed: Mon Nov 30 19:42:45 2015 +0300
----------------------------------------------------------------------
examples/pom.xml | 5 ++---
examples/schema-import/pom.xml | 2 +-
modules/aop/pom.xml | 2 +-
modules/apache-license-gen/pom.xml | 2 +-
modules/aws/pom.xml | 2 +-
modules/camel/pom.xml | 5 ++---
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 2 +-
modules/core/src/main/resources/ignite.properties | 2 +-
modules/extdata/p2p/pom.xml | 2 +-
modules/extdata/uri/modules/uri-dependency/pom.xml | 2 +-
modules/extdata/uri/pom.xml | 4 ++--
modules/flume/pom.xml | 5 ++---
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/jms11/pom.xml | 2 +-
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/log4j2/pom.xml | 2 +-
modules/mesos/pom.xml | 2 +-
modules/mqtt/pom.xml | 5 ++---
modules/platforms/cpp/common/configure.ac | 2 +-
modules/platforms/cpp/core-test/configure.ac | 2 +-
modules/platforms/cpp/core/configure.ac | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
modules/platforms/cpp/ignite/configure.ac | 2 +-
.../dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 4 ++--
.../Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs | 4 ++--
.../platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 4 ++--
.../examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs | 4 ++--
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 +-
modules/slf4j/pom.xml | 2 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
modules/ssh/pom.xml | 2 +-
modules/tools/pom.xml | 2 +-
modules/twitter/pom.xml | 5 ++---
modules/urideploy/pom.xml | 2 +-
modules/visor-console-2.10/pom.xml | 2 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 2 +-
modules/yardstick/pom.xml | 6 ++----
modules/yarn/pom.xml | 2 +-
modules/zookeeper/pom.xml | 2 +-
pom.xml | 2 +-
61 files changed, 75 insertions(+), 82 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 52b152e..1b79525 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -17,8 +17,7 @@
limitations under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -29,7 +28,7 @@
</parent>
<artifactId>ignite-examples</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/examples/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/examples/schema-import/pom.xml b/examples/schema-import/pom.xml
index 5bea512..ee6dc5e 100644
--- a/examples/schema-import/pom.xml
+++ b/examples/schema-import/pom.xml
@@ -35,7 +35,7 @@
</properties>
<artifactId>ignite-schema-import-demo</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index bb419fa..a2eb499 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aop</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/apache-license-gen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/apache-license-gen/pom.xml b/modules/apache-license-gen/pom.xml
index 5d14f89..f7cbd71 100644
--- a/modules/apache-license-gen/pom.xml
+++ b/modules/apache-license-gen/pom.xml
@@ -31,7 +31,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-apache-license-gen</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index 8042d33..281334c 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aws</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/camel/pom.xml b/modules/camel/pom.xml
index 60f0597..83982f8 100644
--- a/modules/camel/pom.xml
+++ b/modules/camel/pom.xml
@@ -20,8 +20,7 @@
<!--
POM file.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -32,7 +31,7 @@
</parent>
<artifactId>ignite-camel</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index 4f1358b..808aff0 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-clients</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/cloud/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cloud/pom.xml b/modules/cloud/pom.xml
index a49625d..2b5c7e5 100644
--- a/modules/cloud/pom.xml
+++ b/modules/cloud/pom.xml
@@ -29,7 +29,7 @@
</parent>
<artifactId>ignite-cloud</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/codegen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/codegen/pom.xml b/modules/codegen/pom.xml
index 957049b..26da227 100644
--- a/modules/codegen/pom.xml
+++ b/modules/codegen/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-codegen</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index e02bb23..13c3b34 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-core</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<repositories>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/core/src/main/resources/ignite.properties
----------------------------------------------------------------------
diff --git a/modules/core/src/main/resources/ignite.properties b/modules/core/src/main/resources/ignite.properties
index 2cf7d15..96443e1 100644
--- a/modules/core/src/main/resources/ignite.properties
+++ b/modules/core/src/main/resources/ignite.properties
@@ -15,7 +15,7 @@
# limitations under the License.
#
-ignite.version=1.5.0-SNAPSHOT
+ignite.version=1.5.0-EA-SNAPSHOT
ignite.build=0
ignite.revision=DEV
ignite.rel.date=01011970
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/extdata/p2p/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/p2p/pom.xml b/modules/extdata/p2p/pom.xml
index 26d1cd2..b2515a1 100644
--- a/modules/extdata/p2p/pom.xml
+++ b/modules/extdata/p2p/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-extdata-p2p</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/extdata/uri/modules/uri-dependency/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/modules/uri-dependency/pom.xml b/modules/extdata/uri/modules/uri-dependency/pom.xml
index 08edb5b..0f4dc02 100644
--- a/modules/extdata/uri/modules/uri-dependency/pom.xml
+++ b/modules/extdata/uri/modules/uri-dependency/pom.xml
@@ -27,7 +27,7 @@
<artifactId>ignite-extdata-uri-dep</artifactId>
<packaging>jar</packaging>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/extdata/uri/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index c5fb5cf..c335e82 100644
--- a/modules/extdata/uri/pom.xml
+++ b/modules/extdata/uri/pom.xml
@@ -32,7 +32,7 @@
</parent>
<artifactId>ignite-extdata-uri</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<dependencies>
<dependency>
@@ -146,7 +146,7 @@
</fileset>
</copy>
- <mkdir dir="${basedir}/target/deploy_tmp/"/>
+ <mkdir dir="${basedir}/target/deploy_tmp/" />
<!--uri-classes.gar-->
<gar destfile="${basedir}/target/deploy2/uri-classes.gar" basedir="${basedir}/target/classes" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/flume/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flume/pom.xml b/modules/flume/pom.xml
index cd4ee98..006e4a1 100644
--- a/modules/flume/pom.xml
+++ b/modules/flume/pom.xml
@@ -20,8 +20,7 @@
<!--
POM file.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -32,7 +31,7 @@
</parent>
<artifactId>ignite-flume</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/gce/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gce/pom.xml b/modules/gce/pom.xml
index 1f8de08..32e1155 100644
--- a/modules/gce/pom.xml
+++ b/modules/gce/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-gce</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index 39ebdc4..ddbd491 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-geospatial</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index c2cb89b..0b0b229 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hadoop</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index 8a04ab7..82d56a5 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hibernate</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index d539f6b..ba224ba 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-indexing</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index c94c906..8a47ac6 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jcl</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/jms11/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jms11/pom.xml b/modules/jms11/pom.xml
index 3c37e7f..96290e2 100644
--- a/modules/jms11/pom.xml
+++ b/modules/jms11/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jms11</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index 78242e7..a51b8cb 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jta</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index 89c1550..70519d2 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-kafka</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index fe95700..e83ccca 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/log4j2/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j2/pom.xml b/modules/log4j2/pom.xml
index eca3b75..7221f08 100644
--- a/modules/log4j2/pom.xml
+++ b/modules/log4j2/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j2</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/mesos/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mesos/pom.xml b/modules/mesos/pom.xml
index 466805c..9b7e8ed 100644
--- a/modules/mesos/pom.xml
+++ b/modules/mesos/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mesos</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/mqtt/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mqtt/pom.xml b/modules/mqtt/pom.xml
index 21511e8..b786946 100644
--- a/modules/mqtt/pom.xml
+++ b/modules/mqtt/pom.xml
@@ -20,8 +20,7 @@
<!--
POM file.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -32,7 +31,7 @@
</parent>
<artifactId>ignite-mqtt</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/cpp/common/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/common/configure.ac b/modules/platforms/cpp/common/configure.ac
index 5cab969..8f53ea3 100644
--- a/modules/platforms/cpp/common/configure.ac
+++ b/modules/platforms/cpp/common/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite JNI bridge for C++], [1.5.0], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
+AC_INIT([Apache Ignite JNI bridge for C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/cpp/core-test/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/configure.ac b/modules/platforms/cpp/core-test/configure.ac
index b337fba..14baf55 100644
--- a/modules/platforms/cpp/core-test/configure.ac
+++ b/modules/platforms/cpp/core-test/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Test], [1.5.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Test], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/cpp/core/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/configure.ac b/modules/platforms/cpp/core/configure.ac
index c1657d3..f10eeb9 100644
--- a/modules/platforms/cpp/core/configure.ac
+++ b/modules/platforms/cpp/core/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [1.5.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/cpp/examples/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/configure.ac b/modules/platforms/cpp/examples/configure.ac
index a5e902d..2d30028 100644
--- a/modules/platforms/cpp/examples/configure.ac
+++ b/modules/platforms/cpp/examples/configure.ac
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Ingnite C++ examples],[1.4.0],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
+AC_INIT([Ingnite C++ examples],[1.5.0-EA],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/cpp/ignite/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/ignite/configure.ac b/modules/platforms/cpp/ignite/configure.ac
index 7705797..41d944c 100644
--- a/modules/platforms/cpp/ignite/configure.ac
+++ b/modules/platforms/cpp/ignite/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Runner], [1.5.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Runner], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 09d4993..79a980c 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
index 5d9610e..f967e73 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
@@ -45,5 +45,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index 2bf822d..7dbe612 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
index c2f46b8..b6e0e5a 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("97db45a8-f922-456a-a819-7b3c6e5e03ba")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index 60f81b3..b50be27 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index 0880a82..4e26b64 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index d7681db..52f84c9 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Reflection;
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
-[assembly: AssemblyVersion("1.5.0")]
-[assembly: AssemblyFileVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.0-EA")]
+[assembly: AssemblyFileVersion("1.5.0-EA")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index 9aa79f2..e777078 100644
--- a/modules/rest-http/pom.xml
+++ b/modules/rest-http/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-rest-http</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index c2046e9..82c07b6 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar_2.10</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index c8dce64..9106110 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index 3f53df6..d26c833 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schedule</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index 1e63cae..3157dac 100644
--- a/modules/schema-import/pom.xml
+++ b/modules/schema-import/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schema-import</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index b22ae6c..14754eb 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-slf4j</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index 4697693..55c5386 100644
--- a/modules/spark-2.10/pom.xml
+++ b/modules/spark-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark_2.10</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/spark/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 93c3e41..386ef32 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index 8d1f918..9b6446f 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spring</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 5028322..678fb28 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-ssh</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/tools/pom.xml
----------------------------------------------------------------------
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index 26689760..746466f 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-tools</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/twitter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/twitter/pom.xml b/modules/twitter/pom.xml
index 6c02935..644951f 100644
--- a/modules/twitter/pom.xml
+++ b/modules/twitter/pom.xml
@@ -20,8 +20,7 @@
<!--
POM file.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -32,7 +31,7 @@
</parent>
<artifactId>ignite-twitter</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index c8fac6e..0008fba 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-urideploy</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/visor-console-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console-2.10/pom.xml b/modules/visor-console-2.10/pom.xml
index 73c7a58..ffa449c 100644
--- a/modules/visor-console-2.10/pom.xml
+++ b/modules/visor-console-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console_2.10</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index e514a0f..69280c5 100644
--- a/modules/visor-console/pom.xml
+++ b/modules/visor-console/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index 05b4ede..dc56f2e 100644
--- a/modules/visor-plugins/pom.xml
+++ b/modules/visor-plugins/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-plugins</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index 99a356e..b7c7daa 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/yardstick/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/pom.xml b/modules/yardstick/pom.xml
index 5bb41b3..31fa2fd 100644
--- a/modules/yardstick/pom.xml
+++ b/modules/yardstick/pom.xml
@@ -20,9 +20,7 @@
<!--
POM file.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -33,7 +31,7 @@
</parent>
<artifactId>ignite-yardstick</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/yarn/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yarn/pom.xml b/modules/yarn/pom.xml
index d1f6390..d771d82 100644
--- a/modules/yarn/pom.xml
+++ b/modules/yarn/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yarn</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/modules/zookeeper/pom.xml
----------------------------------------------------------------------
diff --git a/modules/zookeeper/pom.xml b/modules/zookeeper/pom.xml
index 303b941..af485f3 100644
--- a/modules/zookeeper/pom.xml
+++ b/modules/zookeeper/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-zookeeper</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6260fc1f/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 115df88..af54e52 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>apache-ignite</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-EA-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
[25/50] [abbrv] ignite git commit: ignite-2008 Added test reproducing
issue.
Posted by sb...@apache.org.
ignite-2008 Added test reproducing issue.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f7709543
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f7709543
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f7709543
Branch: refs/heads/master
Commit: f7709543c7e6652dc276e38629f2f1d1315fa84e
Parents: e7298ad
Author: sboikov <sb...@gridgain.com>
Authored: Thu Dec 3 10:42:15 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Dec 3 10:42:15 2015 +0300
----------------------------------------------------------------------
.../CacheLockReleaseNodeLeaveTest.java | 51 ++++++++++++++++++++
1 file changed, 51 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f7709543/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
index 956aaef..e84fd3f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
@@ -29,9 +29,12 @@ import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.GridTestUtils;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+import org.apache.ignite.transactions.Transaction;
import static java.util.concurrent.TimeUnit.SECONDS;
import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
+import static org.apache.ignite.transactions.TransactionConcurrency.PESSIMISTIC;
+import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_READ;
/**
*
@@ -107,4 +110,52 @@ public class CacheLockReleaseNodeLeaveTest extends GridCommonAbstractTest {
fut2.get(5, SECONDS);
}
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testTxLockRelease() throws Exception {
+ startGrids(2);
+
+ final Ignite ignite0 = ignite(0);
+ final Ignite ignite1 = ignite(1);
+
+ final Integer key = primaryKey(ignite1.cache(null));
+
+ IgniteInternalFuture<?> fut1 = GridTestUtils.runAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ Transaction tx = ignite0.transactions().txStart(PESSIMISTIC, REPEATABLE_READ);
+
+ ignite0.cache(null).get(key);
+
+ return null;
+ }
+ }, "lock-thread1");
+
+ fut1.get();
+
+ IgniteInternalFuture<?> fut2 = GridTestUtils.runAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ try (Transaction tx = ignite1.transactions().txStart(PESSIMISTIC, REPEATABLE_READ)) {
+ log.info("Start tx lock.");
+
+ ignite1.cache(null).get(key);
+
+ log.info("Tx locked key.");
+
+ tx.commit();
+ }
+
+ return null;
+ }
+ }, "lock-thread2");
+
+ U.sleep(1000);
+
+ log.info("Stop node.");
+
+ ignite0.close();
+
+ fut2.get(5, SECONDS);
+ }
}
[36/50] [abbrv] ignite git commit: IGNITE-1270 Update version number
of OSGi modules to 1.5.0-b1-SNAPSHOT. Adjust test that assumed
major.minor.micro to take into account qualifier.
Posted by sb...@apache.org.
IGNITE-1270 Update version number of OSGi modules to 1.5.0-b1-SNAPSHOT.
Adjust test that assumed major.minor.micro to take into account qualifier.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4ba911f0
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4ba911f0
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4ba911f0
Branch: refs/heads/master
Commit: 4ba911f0a4dfbfffd8bef019dcbaa284c5d98bf3
Parents: 96e0802
Author: Raul Kripalani <ra...@apache.org>
Authored: Thu Dec 3 14:46:23 2015 +0000
Committer: Raul Kripalani <ra...@apache.org>
Committed: Thu Dec 3 15:00:58 2015 +0000
----------------------------------------------------------------------
modules/osgi-karaf/pom.xml | 3 +--
modules/osgi-paxlogging/pom.xml | 3 +--
modules/osgi/pom.xml | 2 +-
.../apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java | 2 +-
4 files changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/4ba911f0/modules/osgi-karaf/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/pom.xml b/modules/osgi-karaf/pom.xml
index f1ac66b..e1f53e2 100644
--- a/modules/osgi-karaf/pom.xml
+++ b/modules/osgi-karaf/pom.xml
@@ -31,9 +31,8 @@
<relativePath>../../parent</relativePath>
</parent>
- <groupId>org.apache.ignite</groupId>
<artifactId>ignite-osgi-karaf</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/4ba911f0/modules/osgi-paxlogging/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-paxlogging/pom.xml b/modules/osgi-paxlogging/pom.xml
index bd9e18e..15a5e0c 100644
--- a/modules/osgi-paxlogging/pom.xml
+++ b/modules/osgi-paxlogging/pom.xml
@@ -32,9 +32,8 @@
<relativePath>../../parent</relativePath>
</parent>
- <groupId>org.apache.ignite</groupId>
<artifactId>ignite-osgi-paxlogging</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/4ba911f0/modules/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi/pom.xml b/modules/osgi/pom.xml
index d6d46bf..47c7928 100644
--- a/modules/osgi/pom.xml
+++ b/modules/osgi/pom.xml
@@ -32,7 +32,7 @@
</parent>
<artifactId>ignite-osgi</artifactId>
- <version>1.5.0-SNAPSHOT</version>
+ <version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/4ba911f0/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
index c0eb06b..112a607 100644
--- a/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
@@ -87,7 +87,7 @@ public class IgniteKarafFeaturesInstallationTest extends AbstractIgniteKarafTest
f.getName(), installed));
assertTrue(installed);
- assertEquals(PROJECT_VERSION.replaceAll("-", "."), f.getVersion());
+ assertEquals(PROJECT_VERSION.replaceAll("-", "."), f.getVersion().replaceAll("-", "."));
}
}
[38/50] [abbrv] ignite git commit: ignite-2008 Call
removeExplicitNodeLocks before waiting for partitionReleaseFuture.
Posted by sb...@apache.org.
ignite-2008 Call removeExplicitNodeLocks before waiting for partitionReleaseFuture.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/baab3d2b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/baab3d2b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/baab3d2b
Branch: refs/heads/master
Commit: baab3d2b6e047f32f33f1174474683096f2eb373
Parents: 171e9b1
Author: sboikov <sb...@gridgain.com>
Authored: Fri Dec 4 09:04:00 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Fri Dec 4 09:04:00 2015 +0300
----------------------------------------------------------------------
.../dht/preloader/GridDhtPartitionsExchangeFuture.java | 9 ++++-----
.../distributed/dht/GridCacheTxNodeFailureSelfTest.java | 2 ++
.../distributed/dht/GridNearCacheTxNodeFailureSelfTest.java | 4 ----
.../org/apache/ignite/testsuites/IgniteCacheTestSuite2.java | 2 ++
4 files changed, 8 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/baab3d2b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index f7e6acc..31bfa79 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@ -754,6 +754,9 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
// Assign to class variable so it will be included into toString() method.
this.partReleaseFut = partReleaseFut;
+ if (exchId.isLeft())
+ cctx.mvcc().removeExplicitNodeLocks(exchId.nodeId(), exchId.topologyVersion());
+
if (log.isDebugEnabled())
log.debug("Before waiting for partition release future: " + this);
@@ -778,9 +781,6 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
if (log.isDebugEnabled())
log.debug("After waiting for partition release future: " + this);
- if (exchId.isLeft())
- cctx.mvcc().removeExplicitNodeLocks(exchId.nodeId(), exchId.topologyVersion());
-
IgniteInternalFuture<?> locksFut = cctx.mvcc().finishLocks(exchId.topologyVersion());
dumpedObjects = 0;
@@ -1015,9 +1015,8 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
if (ready) {
GridDhtPartitionFullMap locMap = cacheCtx.topology().partitionMap(true);
- if (useOldApi) {
+ if (useOldApi)
locMap = new GridDhtPartitionFullMap(locMap.nodeId(), locMap.nodeOrder(), locMap.updateSequence(), locMap);
- }
m.addFullPartitionsMap(cacheCtx.cacheId(), locMap);
http://git-wip-us.apache.org/repos/asf/ignite/blob/baab3d2b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
index fe0b84e..78e7672 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
@@ -295,6 +295,8 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
// Check that thread successfully finished.
fut.get();
+ awaitPartitionMapExchange();
+
// Check there are no hanging transactions.
assertEquals(0, ((IgniteEx)ignite(0)).context().cache().context().tm().idMapSize());
assertEquals(0, ((IgniteEx)ignite(2)).context().cache().context().tm().idMapSize());
http://git-wip-us.apache.org/repos/asf/ignite/blob/baab3d2b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
index ca23646..5735182 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
@@ -28,8 +28,4 @@ public class GridNearCacheTxNodeFailureSelfTest extends GridCacheTxNodeFailureSe
@Override protected CacheConfiguration cacheConfiguration(String gridName) {
return super.cacheConfiguration(gridName).setNearConfiguration(new NearCacheConfiguration());
}
-
- @Override public void testPrimaryNodeFailureBackupCommitImplicit(){
- fail("https://issues.apache.org/jira/browse/IGNITE-1611");
- }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/baab3d2b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
index 74b688f..c94931e 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
@@ -35,6 +35,7 @@ import org.apache.ignite.internal.processors.cache.IgniteCacheEntryProcessorNode
import org.apache.ignite.internal.processors.cache.IgniteCachePartitionMapUpdateTest;
import org.apache.ignite.internal.processors.cache.IgniteDynamicCacheAndNodeStop;
import org.apache.ignite.internal.processors.cache.distributed.CacheLoadingConcurrentGridStartSelfTest;
+import org.apache.ignite.internal.processors.cache.distributed.CacheLockReleaseNodeLeaveTest;
import org.apache.ignite.internal.processors.cache.distributed.GridCachePartitionNotLoadedEventSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.GridCachePartitionedNearDisabledTxMultiThreadedSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.GridCacheTransformEventSelfTest;
@@ -244,6 +245,7 @@ public class IgniteCacheTestSuite2 extends TestSuite {
suite.addTest(new TestSuite(GridCacheNearTxForceKeyTest.class));
suite.addTest(new TestSuite(CrossCacheTxRandomOperationsTest.class));
suite.addTest(new TestSuite(IgniteDynamicCacheAndNodeStop.class));
+ suite.addTest(new TestSuite(CacheLockReleaseNodeLeaveTest.class));
return suite;
}
[42/50] [abbrv] ignite git commit: Javadoc hotfix
Posted by sb...@apache.org.
Javadoc hotfix
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d5fa3c1b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d5fa3c1b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d5fa3c1b
Branch: refs/heads/master
Commit: d5fa3c1b69cfa336e70087dded9ddfa099000235
Parents: e5de23e
Author: Anton Vinogradov <av...@apache.org>
Authored: Fri Dec 4 13:24:59 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Fri Dec 4 13:24:59 2015 +0300
----------------------------------------------------------------------
.../cache/distributed/dht/preloader/GridDhtPartitionDemander.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/d5fa3c1b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index ced0d10..998f7a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -359,7 +359,7 @@ public class GridDhtPartitionDemander {
* @param fut Future.
* @param assigns Assignments.
* @throws IgniteCheckedException If failed.
- * @return
+ * @return Partitions were requested.
*/
private boolean requestPartitions(
RebalanceFuture fut,
[16/50] [abbrv] ignite git commit: fixed npe
Posted by sb...@apache.org.
fixed npe
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/022cdafe
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/022cdafe
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/022cdafe
Branch: refs/heads/master
Commit: 022cdafec2f23651c8de82ae7bd9bd5f37999e21
Parents: b274a5c
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Tue Dec 1 16:36:59 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Tue Dec 1 16:36:59 2015 +0300
----------------------------------------------------------------------
.../cache/distributed/near/GridNearGetFuture.java | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/022cdafe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
index 3f61b2f..9705569 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
@@ -264,11 +264,13 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
if (!success) {
GridCacheVersion obsolete = cctx.versions().next(topVer);
- for (GridNearCacheEntry reserved : savedEntries.values()) {
- reserved.releaseEviction();
+ if (savedEntries != null) {
+ for (GridNearCacheEntry reserved : savedEntries.values()) {
+ reserved.releaseEviction();
- if (reserved.markObsolete(obsolete))
- reserved.context().cache().removeEntry(reserved);
+ if (reserved.markObsolete(obsolete))
+ reserved.context().cache().removeEntry(reserved);
+ }
}
}
}
@@ -543,7 +545,7 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
}
else {
K key0 = (K)cctx.unwrapPortableIfNeeded(key, !deserializePortable, false);
- V val0 = !skipVals ?
+ V val0 = !skipVals ?
(V)cctx.unwrapPortableIfNeeded(v, !deserializePortable, false) :
(V)Boolean.TRUE;
[47/50] [abbrv] ignite git commit: Printing "Failed to register
marshalled class" warning in the versbose mode only
Posted by sb...@apache.org.
Printing "Failed to register marshalled class" warning in the versbose mode only
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/8033bc46
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/8033bc46
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/8033bc46
Branch: refs/heads/master
Commit: 8033bc46df9087971e72187ff75557749cee3f7b
Parents: 3d585d5
Author: Denis Magda <dm...@gridgain.com>
Authored: Sun Dec 6 11:38:17 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Sun Dec 6 11:38:17 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/MarshallerContextImpl.java | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/8033bc46/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
index 5c9b54f..276cdc3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
@@ -123,10 +123,9 @@ public class MarshallerContextImpl extends MarshallerContextAdapter {
}
catch (CachePartialUpdateCheckedException | GridCacheTryPutFailedException e) {
if (++failedCnt > 10) {
- String msg = "Failed to register marshalled class for more than 10 times in a row " +
- "(may affect performance).";
-
- U.quietAndWarn(log, msg, msg);
+ if (log.isQuiet())
+ U.quiet(false, "Failed to register marshalled class for more than 10 times in a row " +
+ "(may affect performance).");
failedCnt = 0;
}
[11/50] [abbrv] ignite git commit: ignite-1.5 Correction for commit
59f3726.
Posted by sb...@apache.org.
ignite-1.5 Correction for commit 59f3726.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/c850ae47
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/c850ae47
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/c850ae47
Branch: refs/heads/master
Commit: c850ae474e1d60bf4e927206b580af19e7f208bb
Parents: e11e4cb
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 14:17:59 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 14:17:59 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/c850ae47/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index e5885a6..09e4877 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -360,7 +360,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
clients.remove(id, rmv)) {
rmv.forceClose();
- if (!isNodeStopping()) {
+ if (!stopping) {
GridNioRecoveryDescriptor recoveryData = ses.recoveryDescriptor();
if (recoveryData != null) {
@@ -1761,7 +1761,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
/** {@inheritDoc} */
@Override public void spiStop() throws IgniteSpiException {
- assert isNodeStopping();
+ assert stopping;
unregisterMBean();
[27/50] [abbrv] ignite git commit: ignite-1027 Fixed early rebalance
sync future completion.
Posted by sb...@apache.org.
ignite-1027 Fixed early rebalance sync future completion.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ad9e4db5
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ad9e4db5
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ad9e4db5
Branch: refs/heads/master
Commit: ad9e4db5b87b064d13db4f9251c25efd535fb9e8
Parents: 9b60c75
Author: sboikov <sb...@gridgain.com>
Authored: Thu Dec 3 10:45:30 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Dec 3 10:45:30 2015 +0300
----------------------------------------------------------------------
.../GridCachePartitionExchangeManager.java | 17 ++--
.../processors/cache/GridCachePreloader.java | 11 ++-
.../dht/preloader/GridDhtPartitionDemander.java | 41 ++++----
.../dht/preloader/GridDhtPreloader.java | 4 +-
.../preloader/GridDhtPreloaderAssignments.java | 19 +++-
.../dht/GridCacheDhtPreloadDelayedSelfTest.java | 37 +++++---
...cingDelayedPartitionMapExchangeSelfTest.java | 9 +-
.../GridCacheRebalancingAsyncSelfTest.java | 3 +-
.../GridCacheRebalancingSyncCheckDataTest.java | 98 ++++++++++++++++++++
.../GridCacheRebalancingSyncSelfTest.java | 55 +++++------
...eRebalancingUnmarshallingFailedSelfTest.java | 6 +-
.../testsuites/IgniteCacheTestSuite3.java | 2 +
12 files changed, 223 insertions(+), 79 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git 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
index b13a5af..a0f7f93 100644
--- 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
@@ -1399,8 +1399,10 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
waitList.add(cctx.cacheContext(cId).name());
}
- Callable<Boolean> r = cacheCtx.preloader().addAssignments(
- assignsMap.get(cacheId), forcePreload, waitList, cnt);
+ Callable<Boolean> r = cacheCtx.preloader().addAssignments(assignsMap.get(cacheId),
+ forcePreload,
+ waitList,
+ cnt);
if (r != null) {
U.log(log, "Cache rebalancing scheduled: [cache=" + cacheCtx.name() +
@@ -1425,7 +1427,7 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
"[top=" + exchFut.topologyVersion() + ", evt=" + exchFut.discoveryEvent().name() +
", node=" + exchFut.discoveryEvent().eventNode().id() + ']');
- if (marshR != null)
+ if (marshR != null) {
try {
marshR.call(); //Marshaller cache rebalancing launches in sync way.
}
@@ -1435,6 +1437,7 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
continue;
}
+ }
final GridFutureAdapter fut = new GridFutureAdapter();
@@ -1463,17 +1466,19 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
fut.onDone();
}
}
- }, /*system pool*/ true);
+ }, /*system pool*/true);
}
- else
+ else {
U.log(log, "Skipping rebalancing (obsolete exchange ID) " +
"[top=" + exchFut.topologyVersion() + ", evt=" + exchFut.discoveryEvent().name() +
", node=" + exchFut.discoveryEvent().eventNode().id() + ']');
+ }
}
- else
+ else {
U.log(log, "Skipping rebalancing (nothing scheduled) " +
"[top=" + exchFut.topologyVersion() + ", evt=" + exchFut.discoveryEvent().name() +
", node=" + exchFut.discoveryEvent().eventNode().id() + ']');
+ }
}
}
catch (IgniteInterruptedCheckedException e) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
index 8e1164b..c8fcb90 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java
@@ -86,9 +86,9 @@ public interface GridCachePreloader {
/**
* @param exchFut Exchange future to assign.
- * @return Assignments.
+ * @return Assignments or {@code null} if detected that there are pending exchanges.
*/
- public GridDhtPreloaderAssignments assign(GridDhtPartitionsExchangeFuture exchFut);
+ @Nullable public GridDhtPreloaderAssignments assign(GridDhtPartitionsExchangeFuture exchFut);
/**
* Adds assignments to preloader.
@@ -97,9 +97,12 @@ public interface GridCachePreloader {
* @param forcePreload Force preload flag.
* @param caches Rebalancing of these caches will be finished before this started.
* @param cnt Counter.
+ * @return Rebalancing closure.
*/
- public Callable<Boolean> addAssignments(GridDhtPreloaderAssignments assignments, boolean forcePreload,
- Collection<String> caches, int cnt);
+ public Callable<Boolean> addAssignments(GridDhtPreloaderAssignments assignments,
+ boolean forcePreload,
+ Collection<String> caches,
+ int cnt);
/**
* @param p Preload predicate.
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index eb9e97f..ced0d10 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -251,6 +251,7 @@ public class GridDhtPartitionDemander {
/**
* @param name Cache name.
* @param fut Future.
+ * @throws IgniteCheckedException If failed.
*/
private boolean waitForCacheRebalancing(String name, RebalanceFuture fut) throws IgniteCheckedException {
if (log.isDebugEnabled())
@@ -283,7 +284,7 @@ public class GridDhtPartitionDemander {
* @param force {@code True} if dummy reassign.
* @param caches Rebalancing of these caches will be finished before this started.
* @param cnt Counter.
- * @throws IgniteCheckedException If failed.
+ * @return Rebalancing closure.
*/
Callable<Boolean> addAssignments(final GridDhtPreloaderAssignments assigns, boolean force,
final Collection<String> caches, int cnt) {
@@ -293,25 +294,24 @@ public class GridDhtPartitionDemander {
long delay = cctx.config().getRebalanceDelay();
if (delay == 0 || force) {
- assert assigns != null;
-
final RebalanceFuture oldFut = rebalanceFut;
final RebalanceFuture fut = new RebalanceFuture(assigns, cctx, log, oldFut.isInitial(), cnt);
if (!oldFut.isInitial())
oldFut.cancel();
- else
+ else {
fut.listen(new CI1<IgniteInternalFuture<Boolean>>() {
- @Override public void apply(IgniteInternalFuture<Boolean> future) {
+ @Override public void apply(IgniteInternalFuture<Boolean> fut) {
oldFut.onDone(fut.result());
}
});
+ }
rebalanceFut = fut;
if (assigns.isEmpty()) {
- fut.doneIfEmpty();
+ fut.doneIfEmpty(assigns.cancelled());
return null;
}
@@ -357,6 +357,9 @@ public class GridDhtPartitionDemander {
/**
* @param fut Future.
+ * @param assigns Assignments.
+ * @throws IgniteCheckedException If failed.
+ * @return
*/
private boolean requestPartitions(
RebalanceFuture fut,
@@ -370,7 +373,7 @@ public class GridDhtPartitionDemander {
GridDhtPartitionDemandMessage d = e.getValue();
- fut.appendPartitions(node.id(), d.partitions());//Future preparation.
+ fut.appendPartitions(node.id(), d.partitions()); //Future preparation.
}
for (Map.Entry<ClusterNode, GridDhtPartitionDemandMessage> e : assigns.entrySet()) {
@@ -413,7 +416,8 @@ public class GridDhtPartitionDemander {
initD.timeout(cctx.config().getRebalanceTimeout());
synchronized (fut) {
- if (!fut.isDone())// Future can be already cancelled at this moment and all failovers happened.
+ if (!fut.isDone())
+ // Future can be already cancelled at this moment and all failovers happened.
// New requests will not be covered by failovers.
cctx.io().sendOrderedMessage(node,
rebalanceTopics.get(cnt), initD, cctx.ioPolicy(), initD.timeout());
@@ -427,9 +431,12 @@ public class GridDhtPartitionDemander {
}
}
else {
- U.log(log, "Starting rebalancing (old api) [cache=" + cctx.name() + ", mode=" + cfg.getRebalanceMode() +
- ", fromNode=" + node.id() + ", partitionsCount=" + parts.size() +
- ", topology=" + fut.topologyVersion() + ", updateSeq=" + fut.updateSeq + "]");
+ U.log(log, "Starting rebalancing (old api) [cache=" + cctx.name() +
+ ", mode=" + cfg.getRebalanceMode() +
+ ", fromNode=" + node.id() +
+ ", partitionsCount=" + parts.size() +
+ ", topology=" + fut.topologyVersion() +
+ ", updateSeq=" + fut.updateSeq + "]");
d.timeout(cctx.config().getRebalanceTimeout());
d.workerId(0);//old api support.
@@ -832,9 +839,9 @@ public class GridDhtPartitionDemander {
}
/**
- *
+ * @param cancelled Is cancelled.
*/
- private void doneIfEmpty() {
+ private void doneIfEmpty(boolean cancelled) {
synchronized (this) {
if (isDone())
return;
@@ -845,14 +852,14 @@ public class GridDhtPartitionDemander {
log.debug("Rebalancing is not required [cache=" + cctx.name() +
", topology=" + topVer + "]");
- checkIsDone();
+ checkIsDone(cancelled);
}
}
/**
* Cancels this future.
*
- * @return {@code true}.
+ * @return {@code True}.
*/
@Override public boolean cancel() {
synchronized (this) {
@@ -860,7 +867,7 @@ public class GridDhtPartitionDemander {
return true;
U.log(log, "Cancelled rebalancing from all nodes [cache=" + cctx.name()
- + ", topology=" + topologyVersion());
+ + ", topology=" + topologyVersion() + ']');
if (!cctx.kernalContext().isStopping()) {
for (UUID nodeId : remaining.keySet())
@@ -1012,7 +1019,7 @@ public class GridDhtPartitionDemander {
preloadEvent(EVT_CACHE_REBALANCE_STOPPED, exchFut.discoveryEvent());
if (log.isDebugEnabled())
- log.debug("Completed rebalance future.");
+ log.debug("Completed rebalance future: " + this);
cctx.shared().exchange().scheduleResendPartitions();
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
index 3e3cee3..9a6246f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
@@ -324,7 +324,9 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
log.debug("Skipping assignments creation, exchange worker has pending assignments: " +
exchFut.exchangeId());
- break;
+ assigns.cancelled(true);
+
+ return assigns;
}
// If partition belongs to local node.
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloaderAssignments.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloaderAssignments.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloaderAssignments.java
index 3583967..3f82c9b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloaderAssignments.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloaderAssignments.java
@@ -37,19 +37,36 @@ public class GridDhtPreloaderAssignments extends ConcurrentHashMap<ClusterNode,
/** Last join order. */
private final AffinityTopologyVersion topVer;
+ /** */
+ private boolean cancelled;
+
/**
* @param exchFut Exchange future.
* @param topVer Last join order.
*/
public GridDhtPreloaderAssignments(GridDhtPartitionsExchangeFuture exchFut, AffinityTopologyVersion topVer) {
assert exchFut != null;
- assert topVer.topologyVersion() > 0;
+ assert topVer.topologyVersion() > 0 : topVer;
this.exchFut = exchFut;
this.topVer = topVer;
}
/**
+ * @return {@code True} if assignments creation was cancelled.
+ */
+ public boolean cancelled() {
+ return cancelled;
+ }
+
+ /**
+ * @param cancelled {@code True} if assignments creation was cancelled.
+ */
+ public void cancelled(boolean cancelled) {
+ this.cancelled = cancelled;
+ }
+
+ /**
* @return Exchange future.
*/
GridDhtPartitionsExchangeFuture exchangeFuture() {
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheDhtPreloadDelayedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheDhtPreloadDelayedSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheDhtPreloadDelayedSelfTest.java
index 9d6e82f..0b610f3 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheDhtPreloadDelayedSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheDhtPreloadDelayedSelfTest.java
@@ -22,7 +22,6 @@ import java.util.Collection;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.CachePeekMode;
@@ -35,7 +34,6 @@ import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.events.Event;
import org.apache.ignite.events.EventType;
-import org.apache.ignite.internal.IgniteInterruptedCheckedException;
import org.apache.ignite.internal.IgniteKernal;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2;
@@ -51,6 +49,7 @@ import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.GridTestUtils;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+import static java.util.concurrent.TimeUnit.MILLISECONDS;
import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
import static org.apache.ignite.cache.CacheMode.PARTITIONED;
import static org.apache.ignite.cache.CacheRebalanceMode.ASYNC;
@@ -107,7 +106,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
stopAllGrids();
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testManualPreload() throws Exception {
delay = -1;
@@ -184,7 +185,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
checkCache(c2, cnt);
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testDelayedPreload() throws Exception {
delay = PRELOAD_DELAY;
@@ -238,9 +241,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
checkMaps(false, d0, d1, d2);
- assert l1.await(PRELOAD_DELAY * 3 / 2, TimeUnit.MILLISECONDS);
+ assert l1.await(PRELOAD_DELAY * 3 / 2, MILLISECONDS);
- assert l2.await(PRELOAD_DELAY * 3 / 2, TimeUnit.MILLISECONDS);
+ assert l2.await(PRELOAD_DELAY * 3 / 2, MILLISECONDS);
U.sleep(1000);
@@ -253,7 +256,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
checkCache(c2, cnt);
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testAutomaticPreload() throws Exception {
delay = 0;
preloadMode = CacheRebalanceMode.SYNC;
@@ -284,7 +289,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
checkCache(c2, cnt);
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testAutomaticPreloadWithEmptyCache() throws Exception {
preloadMode = SYNC;
@@ -331,7 +338,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
}
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testManualPreloadSyncMode() throws Exception {
preloadMode = CacheRebalanceMode.SYNC;
delay = -1;
@@ -344,7 +353,9 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
}
}
- /** @throws Exception If failed. */
+ /**
+ * @throws Exception If failed.
+ */
public void testPreloadManyNodes() throws Exception {
delay = 0;
preloadMode = ASYNC;
@@ -419,9 +430,11 @@ public class GridCacheDhtPreloadDelayedSelfTest extends GridCommonAbstractTest {
*
* @param strict Strict check flag.
* @param caches Maps to compare.
+ * @throws Exception If failed.
*/
- private void checkMaps(final boolean strict, final GridDhtCacheAdapter<String, Integer>... caches)
- throws IgniteInterruptedCheckedException {
+ @SafeVarargs
+ private final void checkMaps(final boolean strict, final GridDhtCacheAdapter<String, Integer>... caches)
+ throws Exception {
if (caches.length < 2)
return;
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.java
index a1ea7ad..2890fcb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.java
@@ -73,20 +73,20 @@ public class GridCacheRabalancingDelayedPartitionMapExchangeSelfTest extends Gri
public class DelayableCommunicationSpi extends TcpCommunicationSpi {
/** {@inheritDoc} */
@Override public void sendMessage(final ClusterNode node, final Message msg,
- final IgniteInClosure<IgniteException> ackClosure) throws IgniteSpiException {
+ final IgniteInClosure<IgniteException> ackC) throws IgniteSpiException {
final Object msg0 = ((GridIoMessage)msg).message();
if (msg0 instanceof GridDhtPartitionsFullMessage && record &&
((GridDhtPartitionsFullMessage)msg0).exchangeId() == null) {
rs.putIfAbsent(node.id(), new Runnable() {
@Override public void run() {
- DelayableCommunicationSpi.super.sendMessage(node, msg, ackClosure);
+ DelayableCommunicationSpi.super.sendMessage(node, msg, ackC);
}
});
}
else
try {
- super.sendMessage(node, msg, ackClosure);
+ super.sendMessage(node, msg, ackC);
}
catch (Exception e) {
U.log(null, e);
@@ -144,9 +144,8 @@ public class GridCacheRabalancingDelayedPartitionMapExchangeSelfTest extends Gri
awaitPartitionMapExchange();
- for (Runnable r : rs.values()) {
+ for (Runnable r : rs.values())
r.run();
- }
U.sleep(10000); // Enough time to process delayed GridDhtPartitionsFullMessages.
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingAsyncSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingAsyncSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingAsyncSelfTest.java
index 7759c70..bcda0da 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingAsyncSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingAsyncSelfTest.java
@@ -33,9 +33,8 @@ public class GridCacheRebalancingAsyncSelfTest extends GridCacheRebalancingSyncS
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration iCfg = super.getConfiguration(gridName);
- for (CacheConfiguration cacheCfg : iCfg.getCacheConfiguration()) {
+ for (CacheConfiguration cacheCfg : iCfg.getCacheConfiguration())
cacheCfg.setRebalanceMode(CacheRebalanceMode.ASYNC);
- }
return iCfg;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncCheckDataTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncCheckDataTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncCheckDataTest.java
new file mode 100644
index 0000000..5e4a5c4
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncCheckDataTest.java
@@ -0,0 +1,98 @@
+/*
+ * 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.cache.distributed.rebalancing;
+
+import java.util.concurrent.Callable;
+import java.util.concurrent.atomic.AtomicInteger;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteCache;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+
+import static org.apache.ignite.cache.CacheMode.REPLICATED;
+import static org.apache.ignite.cache.CacheRebalanceMode.SYNC;
+
+/**
+ *
+ */
+public class GridCacheRebalancingSyncCheckDataTest extends GridCommonAbstractTest {
+ /** */
+ private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder);
+
+ CacheConfiguration<Object, Object> ccfg = new CacheConfiguration<>();
+ ccfg.setCacheMode(REPLICATED);
+ ccfg.setRebalanceMode(SYNC);
+
+ cfg.setCacheConfiguration(ccfg);
+
+ return cfg;
+ }
+
+
+ /** {@inheritDoc} */
+ @Override protected void afterTestsStopped() throws Exception {
+ super.afterTestsStopped();
+
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testDataRebalancing() throws Exception {
+ Ignite ignite = startGrid(0);
+
+ final int KEYS = 10_000;
+
+ IgniteCache<Object, Object> cache = ignite.cache(null);
+
+ for (int i = 0; i < KEYS; i++)
+ cache.put(i, i);
+
+
+ for (int i = 0; i < 3; i++) {
+ log.info("Iteration: " + i);
+
+ final AtomicInteger idx = new AtomicInteger(1);
+
+ GridTestUtils.runMultiThreaded(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ try(Ignite ignite = startGrid(idx.getAndIncrement())) {
+ IgniteCache<Object, Object> cache = ignite.cache(null);
+
+ for (int i = 0; i < KEYS; i++)
+ assertNotNull(cache.localPeek(i));
+ }
+
+ return null;
+ }
+ }, 5, "start-node");
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
index 8c5cd40..3b25bd7 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
@@ -45,19 +45,19 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
protected static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
/** */
- private static int TEST_SIZE = 100_000;
+ private static final int TEST_SIZE = 100_000;
/** partitioned cache name. */
- protected static String CACHE_NAME_DHT_PARTITIONED = "cacheP";
+ protected static final String CACHE_NAME_DHT_PARTITIONED = "cacheP";
/** partitioned cache 2 name. */
- protected static String CACHE_NAME_DHT_PARTITIONED_2 = "cacheP2";
+ protected static final String CACHE_NAME_DHT_PARTITIONED_2 = "cacheP2";
/** replicated cache name. */
- protected static String CACHE_NAME_DHT_REPLICATED = "cacheR";
+ protected static final String CACHE_NAME_DHT_REPLICATED = "cacheR";
/** replicated cache 2 name. */
- protected static String CACHE_NAME_DHT_REPLICATED_2 = "cacheR2";
+ protected static final String CACHE_NAME_DHT_REPLICATED_2 = "cacheR2";
/** */
private volatile boolean concurrentStartFinished;
@@ -122,6 +122,8 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param ignite Ignite.
+ * @param from Start from key.
+ * @param iter Iteration.
*/
protected void generateData(Ignite ignite, int from, int iter) {
generateData(ignite, CACHE_NAME_DHT_PARTITIONED, from, iter);
@@ -132,6 +134,9 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param ignite Ignite.
+ * @param name Cache name.
+ * @param from Start from key.
+ * @param iter Iteration.
*/
protected void generateData(Ignite ignite, String name, int from, int iter) {
for (int i = from; i < from + TEST_SIZE; i++) {
@@ -144,9 +149,10 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param ignite Ignite.
- * @throws IgniteCheckedException Exception.
+ * @param from Start from key.
+ * @param iter Iteration.
*/
- protected void checkData(Ignite ignite, int from, int iter) throws IgniteCheckedException {
+ protected void checkData(Ignite ignite, int from, int iter) {
checkData(ignite, CACHE_NAME_DHT_PARTITIONED, from, iter);
checkData(ignite, CACHE_NAME_DHT_PARTITIONED_2, from, iter);
checkData(ignite, CACHE_NAME_DHT_REPLICATED, from, iter);
@@ -155,10 +161,11 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param ignite Ignite.
+ * @param from Start from key.
+ * @param iter Iteration.
* @param name Cache name.
- * @throws IgniteCheckedException Exception.
*/
- protected void checkData(Ignite ignite, String name, int from, int iter) throws IgniteCheckedException {
+ protected void checkData(Ignite ignite, String name, int from, int iter) {
for (int i = from; i < from + TEST_SIZE; i++) {
if (i % (TEST_SIZE / 10) == 0)
log.info("<" + name + "> Checked " + i * 100 / (TEST_SIZE) + "% entries (" + TEST_SIZE + ").");
@@ -169,7 +176,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
}
/**
- * @throws Exception Exception
+ * @throws Exception If failed.
*/
public void testSimpleRebalancing() throws Exception {
Ignite ignite = startGrid(0);
@@ -206,7 +213,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
}
/**
- * @throws Exception Exception
+ * @throws Exception If failed.
*/
public void testLoadRebalancing() throws Exception {
final Ignite ignite = startGrid(0);
@@ -240,14 +247,8 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
Thread t2 = new Thread() {
@Override public void run() {
- while (!concurrentStartFinished) {
- try {
- checkData(ignite, CACHE_NAME_DHT_PARTITIONED, 0, 0);
- }
- catch (IgniteCheckedException e) {
- e.printStackTrace();
- }
- }
+ while (!concurrentStartFinished)
+ checkData(ignite, CACHE_NAME_DHT_PARTITIONED, 0, 0);
}
};
@@ -282,7 +283,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
* @param id Node id.
* @param major Major ver.
* @param minor Minor ver.
- * @throws IgniteCheckedException Exception.
+ * @throws IgniteCheckedException If failed.
*/
protected void waitForRebalancing(int id, int major, int minor) throws IgniteCheckedException {
waitForRebalancing(id, new AffinityTopologyVersion(major, minor));
@@ -291,7 +292,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param id Node id.
* @param major Major ver.
- * @throws IgniteCheckedException Exception.
+ * @throws IgniteCheckedException If failed.
*/
protected void waitForRebalancing(int id, int major) throws IgniteCheckedException {
waitForRebalancing(id, new AffinityTopologyVersion(major));
@@ -300,7 +301,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
* @param id Node id.
* @param top Topology version.
- * @throws IgniteCheckedException
+ * @throws IgniteCheckedException If failed.
*/
protected void waitForRebalancing(int id, AffinityTopologyVersion top) throws IgniteCheckedException {
boolean finished = false;
@@ -327,6 +328,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
/**
*
*/
+ @SuppressWarnings("SynchronizationOnLocalVariableOrMethodParameter")
protected void checkSupplyContextMapIsEmpty() {
for (Ignite g : G.allGrids()) {
for (GridCacheAdapter c : ((IgniteEx)g).context().cache().internalCaches()) {
@@ -342,12 +344,13 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
}
}
+ /** {@inheritDoc} */
@Override protected long getTestTimeout() {
return 5 * 60_000;
}
/**
- * @throws Exception
+ * @throws Exception If failed.
*/
public void testComplexRebalancing() throws Exception {
final Ignite ignite = startGrid(0);
@@ -368,9 +371,8 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
startGrid(1);
startGrid(2);
- while (!concurrentStartFinished2) {
+ while (!concurrentStartFinished2)
U.sleep(10);
- }
waitForRebalancing(0, 5, 0);
waitForRebalancing(1, 5, 0);
@@ -387,9 +389,8 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
grid(0).getOrCreateCache(cacheRCfg);
- while (!concurrentStartFinished3) {
+ while (!concurrentStartFinished3)
U.sleep(10);
- }
concurrentStartFinished = true;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingUnmarshallingFailedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingUnmarshallingFailedSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingUnmarshallingFailedSelfTest.java
index 506f1c2..7e35906 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingUnmarshallingFailedSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingUnmarshallingFailedSelfTest.java
@@ -125,9 +125,8 @@ public class GridCacheRebalancingUnmarshallingFailedSelfTest extends GridCommonA
startGrid(0);
- for (int i = 0; i < 100; i++) {
+ for (int i = 0; i < 100; i++)
grid(0).cache(CACHE).put(new TestKey(String.valueOf(i)), i);
- }
readCnt.set(1);
@@ -135,9 +134,8 @@ public class GridCacheRebalancingUnmarshallingFailedSelfTest extends GridCommonA
readCnt.set(Integer.MAX_VALUE);
- for (int i = 0; i < 50; i++) {
+ for (int i = 0; i < 50; i++)
assert grid(1).cache(CACHE).get(new TestKey(String.valueOf(i))) != null;
- }
stopGrid(0);
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad9e4db5/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite3.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite3.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite3.java
index b02d022..176ab3f 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite3.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite3.java
@@ -51,6 +51,7 @@ import org.apache.ignite.internal.processors.cache.distributed.near.GridCachePut
import org.apache.ignite.internal.processors.cache.distributed.near.IgniteTxReentryNearSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.rebalancing.GridCacheRabalancingDelayedPartitionMapExchangeSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.rebalancing.GridCacheRebalancingAsyncSelfTest;
+import org.apache.ignite.internal.processors.cache.distributed.rebalancing.GridCacheRebalancingSyncCheckDataTest;
import org.apache.ignite.internal.processors.cache.distributed.rebalancing.GridCacheRebalancingSyncSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.rebalancing.GridCacheRebalancingUnmarshallingFailedSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.replicated.GridCacheDaemonNodeReplicatedSelfTest;
@@ -140,6 +141,7 @@ public class IgniteCacheTestSuite3 extends TestSuite {
suite.addTestSuite(GridCacheOrderedPreloadingSelfTest.class);
suite.addTestSuite(GridCacheRebalancingSyncSelfTest.class);
+ suite.addTestSuite(GridCacheRebalancingSyncCheckDataTest.class);
suite.addTestSuite(GridCacheRebalancingUnmarshallingFailedSelfTest.class);
suite.addTestSuite(GridCacheRebalancingAsyncSelfTest.class);
suite.addTestSuite(GridCacheRabalancingDelayedPartitionMapExchangeSelfTest.class);
[18/50] [abbrv] ignite git commit: IGNITE-1161 Typo.
Posted by sb...@apache.org.
IGNITE-1161 Typo.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e0c970a5
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e0c970a5
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e0c970a5
Branch: refs/heads/master
Commit: e0c970a5fe46940ac9ab2355dd5913f2f7fc2a69
Parents: c389763
Author: anovikov <an...@gridgain.com>
Authored: Tue Dec 1 21:11:03 2015 +0700
Committer: anovikov <an...@gridgain.com>
Committed: Tue Dec 1 21:11:03 2015 +0700
----------------------------------------------------------------------
.../processors/rest/handlers/query/QueryCommandHandler.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e0c970a5/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
index 2961a27..bb929a4 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/query/QueryCommandHandler.java
@@ -90,7 +90,7 @@ public class QueryCommandHandler extends GridRestCommandHandlerAdapter {
long createTime = qryCurIt.timestamp();
- if (createTime + idleQryCurTimeout > time && qryCurIt.tryLock()) {
+ if (time > createTime + idleQryCurTimeout && qryCurIt.tryLock()) {
try {
qryCurIt.timestamp(-1);
[10/50] [abbrv] ignite git commit: ignite-1.5 Disabled shmem in test.
Posted by sb...@apache.org.
ignite-1.5 Disabled shmem in test.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e11e4cb5
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e11e4cb5
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e11e4cb5
Branch: refs/heads/master
Commit: e11e4cb5362899f9f5429cbb4683063ad036b8cd
Parents: fb4ef34
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 13:36:52 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 13:36:52 2015 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/IgniteCacheAbstractTest.java | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e11e4cb5/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractTest.java
index 164ac66..7df72f0 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractTest.java
@@ -33,6 +33,7 @@ import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.NearCacheConfiguration;
import org.apache.ignite.lang.IgniteBiInClosure;
+import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
@@ -88,6 +89,8 @@ public abstract class IgniteCacheAbstractTest extends GridCommonAbstractTest {
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(gridName);
+ ((TcpCommunicationSpi)cfg.getCommunicationSpi()).setSharedMemoryPort(-1);
+
TcpDiscoverySpi disco = new TcpDiscoverySpi().setForceServerMode(true);
disco.setMaxMissedHeartbeats(Integer.MAX_VALUE);
[13/50] [abbrv] ignite git commit: ignite-1.5 Skip message send on
node stop.
Posted by sb...@apache.org.
ignite-1.5 Skip message send on node stop.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3e7c532d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3e7c532d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3e7c532d
Branch: refs/heads/master
Commit: 3e7c532d83fc41b4c8439f30f4157d84bbc3fa08
Parents: 74054fb
Author: sboikov <sb...@gridgain.com>
Authored: Tue Dec 1 15:22:28 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Dec 1 15:22:28 2015 +0300
----------------------------------------------------------------------
.../distributed/dht/preloader/GridDhtPartitionDemander.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3e7c532d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index 20f12b6..728e792 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -861,8 +861,10 @@ public class GridDhtPartitionDemander {
U.log(log, "Cancelled rebalancing from all nodes [cache=" + cctx.name()
+ ", topology=" + topologyVersion());
- for (UUID nodeId : remaining.keySet())
- cleanupRemoteContexts(nodeId);
+ if (!cctx.kernalContext().isStopping()) {
+ for (UUID nodeId : remaining.keySet())
+ cleanupRemoteContexts(nodeId);
+ }
remaining.clear();
@@ -920,7 +922,6 @@ public class GridDhtPartitionDemander {
//Check remote node rebalancing API version.
if (node.version().compareTo(GridDhtPreloader.REBALANCING_VER_2_SINCE) >= 0) {
-
GridDhtPartitionDemandMessage d = new GridDhtPartitionDemandMessage(
-1/* remove supply context signal */, this.topologyVersion(), cctx.cacheId());
[22/50] [abbrv] ignite git commit: Adding property to control compact
footer flag.
Posted by sb...@apache.org.
Adding property to control compact footer flag.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/bd99d1ea
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/bd99d1ea
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/bd99d1ea
Branch: refs/heads/master
Commit: bd99d1ea7fa58aac1fb2e4195b97a673b111ed9d
Parents: c4d29f9
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Wed Dec 2 19:35:42 2015 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Wed Dec 2 19:35:42 2015 +0300
----------------------------------------------------------------------
.../testframework/config/GridTestProperties.java | 3 +++
.../testframework/junits/GridAbstractTest.java | 15 +++++++++++++++
2 files changed, 18 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/bd99d1ea/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java b/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
index 2005c4c..1ea8c38 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/config/GridTestProperties.java
@@ -72,6 +72,9 @@ public final class GridTestProperties {
/** */
public static final String MARSH_CLASS_NAME = "marshaller.class";
+ /** Binary marshaller compact footers property. */
+ public static final String BINARY_COMPACT_FOOTERS = "binary.marshaller.compact.footers";
+
/** */
static {
// Initialize IGNITE_HOME system property.
http://git-wip-us.apache.org/repos/asf/ignite/blob/bd99d1ea/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index afb6141..95661cb 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -51,6 +51,7 @@ import org.apache.ignite.IgniteLogger;
import org.apache.ignite.IgniteSystemProperties;
import org.apache.ignite.Ignition;
import org.apache.ignite.cluster.ClusterNode;
+import org.apache.ignite.configuration.BinaryConfiguration;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.NearCacheConfiguration;
@@ -1117,6 +1118,20 @@ public abstract class GridAbstractTest extends TestCase {
cfg.setNodeId(null);
+ if (GridTestProperties.getProperty(GridTestProperties.BINARY_COMPACT_FOOTERS) != null) {
+ if (!Boolean.valueOf(GridTestProperties.getProperty(GridTestProperties.BINARY_COMPACT_FOOTERS))) {
+ BinaryConfiguration bCfg = cfg.getBinaryConfiguration();
+
+ if (bCfg == null) {
+ bCfg = new BinaryConfiguration();
+
+ cfg.setBinaryConfiguration(bCfg);
+ }
+
+ bCfg.setCompactFooter(false);
+ }
+ }
+
if (gridName != null && gridName.matches(".*\\d")) {
String idStr = UUID.randomUUID().toString();
[34/50] [abbrv] ignite git commit: IGNITE-1270 Implement basic
support for OSGi.
Posted by sb...@apache.org.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/licenses/apache-2.0.txt
----------------------------------------------------------------------
diff --git a/modules/osgi/licenses/apache-2.0.txt b/modules/osgi/licenses/apache-2.0.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/modules/osgi/licenses/apache-2.0.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed 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.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi/pom.xml b/modules/osgi/pom.xml
new file mode 100644
index 0000000..d6d46bf
--- /dev/null
+++ b/modules/osgi/pom.xml
@@ -0,0 +1,171 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ 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.
+-->
+
+<!--
+ POM file.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-parent</artifactId>
+ <version>1</version>
+ <relativePath>../../parent</relativePath>
+ </parent>
+
+ <artifactId>ignite-osgi</artifactId>
+ <version>1.5.0-SNAPSHOT</version>
+ <url>http://ignite.apache.org</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.ignite</groupId>
+ <artifactId>ignite-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ <version>${osgi.core.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam</artifactId>
+ <version>4.6.0</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam-junit4</artifactId>
+ <version>4.6.0</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam-container-karaf</artifactId>
+ <version>4.6.0</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.karaf</groupId>
+ <artifactId>apache-karaf</artifactId>
+ <version>${karaf.version}</version>
+ <type>tar.gz</type>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <version>1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.ops4j.pax.url</groupId>
+ <artifactId>pax-url-aether</artifactId>
+ <version>2.4.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- Generate the OSGi MANIFEST.MF for this bundle.
+ This bundle is a fragment attached to the ignite-core bundle, as it contains and exports classes in
+ the org.apache.ignite.internal.processors.query.h2.opt in the same manner as ignite-geospatial, thus
+ leading to a split package situation in OSGi. It also contains an internal processor.
+ -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.servicemix.tooling</groupId>
+ <artifactId>depends-maven-plugin</artifactId>
+ <version>1.3.1</version>
+ <executions>
+ <execution>
+ <id>generate-depends-file</id>
+ <goals>
+ <goal>generate-depends-file</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <forkCount>1</forkCount>
+ <systemProperties>
+ <property>
+ <name>karafVersion</name>
+ <value>${karaf.version}</value>
+ </property>
+ <property>
+ <name>projectVersion</name>
+ <value>${project.version}</value>
+ </property>
+ <property>
+ <name>camelVersion</name>
+ <value>${camel.version}</value>
+ </property>
+ </systemProperties>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
+
+</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteAbstractOsgiContextActivator.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteAbstractOsgiContextActivator.java b/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteAbstractOsgiContextActivator.java
new file mode 100644
index 0000000..ac76f6e
--- /dev/null
+++ b/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteAbstractOsgiContextActivator.java
@@ -0,0 +1,238 @@
+/*
+ * 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.osgi;
+
+import java.util.Dictionary;
+import java.util.Hashtable;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteException;
+import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.Ignition;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.internal.util.typedef.internal.A;
+import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.osgi.classloaders.BundleDelegatingClassLoader;
+import org.apache.ignite.osgi.classloaders.ContainerSweepClassLoader;
+import org.apache.ignite.osgi.classloaders.OsgiClassLoadingStrategyType;
+import org.jetbrains.annotations.Nullable;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+/**
+ * This {@link BundleActivator} starts Apache Ignite inside the OSGi container when the bundle is started.
+ * <p>
+ * Create an implementation of this class and set the {@code Bundle-Activator} OSGi Manifest header to the FQN of
+ * your class.
+ * <p>
+ * You must provide the {@link IgniteConfiguration} to start by implementing the {@link #igniteConfiguration()}
+ * abstract method. The return value of this method cannot be {@code null}. For example, if your implementation is
+ * called {@code org.myorg.osgi.IgniteActivator}, your bundle must provide the following header:
+ * <pre>
+ * Bundle-Activator: org.myorg.osgi.IgniteActivator
+ * </pre>
+ * You may use the
+ * <a href="https://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html">Maven
+ * Bundle Plugin</a> to generate your bundle (or bundle manifest), including the required header.
+ * <p>
+ * This activator also exports the Ignite instance as an OSGi service, with the property {@code ignite.name} set
+ * to the value of {@link Ignite#name()}, if and only if the name is not null.
+ * <p>
+ * Currently, Ignite only allows a single instance per container. We may remove this limitation if enough demand
+ * builds up in the community.
+ *
+ * @see <a href="http://wiki.osgi.org/wiki/Bundle-Activator">Bundle-Activator OSGi Manifest header</a>
+ *
+ */
+public abstract class IgniteAbstractOsgiContextActivator implements BundleActivator {
+ /** OSGI service property name. */
+ public static final String OSGI_SERVICE_PROP_IGNITE_NAME = "ignite.name";
+
+ /** The instance of Ignite started by this Activator. */
+ protected Ignite ignite;
+
+ /** Our bundle context. */
+ private BundleContext bundleCtx;
+
+ /** Ignite logger. */
+ private IgniteLogger log;
+
+ /**
+ * Method invoked by OSGi to start the bundle. It starts the specified Ignite configuration.
+ *
+ * @param ctx Bundle context.
+ * @throws Exception
+ */
+ @Override public final void start(BundleContext ctx) throws Exception {
+ // Ensure that no other instances are running.
+ if (IgniteOsgiUtils.gridCount() > 0) {
+ throw new IgniteException("Failed to start Ignite instance (another instance is already running " +
+ "and ignite-osgi is currently limited to a single instance per container).");
+ }
+
+ bundleCtx = ctx;
+
+ // Start the Ignite configuration specified by the user.
+ IgniteConfiguration cfg = igniteConfiguration();
+
+ A.notNull(cfg, "Ignite configuration");
+
+ // Override the classloader with the classloading strategy chosen by the user.
+ ClassLoader clsLdr;
+
+ if (classLoadingStrategy() == OsgiClassLoadingStrategyType.BUNDLE_DELEGATING)
+ clsLdr = new BundleDelegatingClassLoader(bundleCtx.getBundle(), Ignite.class.getClassLoader());
+ else
+ clsLdr = new ContainerSweepClassLoader(bundleCtx.getBundle(), Ignite.class.getClassLoader());
+
+ cfg.setClassLoader(clsLdr);
+
+ onBeforeStart(ctx);
+
+ // Start Ignite.
+ try {
+ ignite = Ignition.start(cfg);
+ }
+ catch (Throwable t) {
+ U.error(log, "Failed to start Ignite via OSGi Activator [errMsg=" + t.getMessage() + ']', t);
+
+ onAfterStart(ctx, t);
+
+ return;
+ }
+
+ log = ignite.log();
+
+ log.info("Started Ignite from OSGi Activator [name=" + ignite.name() + ']');
+
+ // Add into Ignite's OSGi registry.
+ IgniteOsgiUtils.classloaders().put(ignite, clsLdr);
+
+ // Export Ignite as a service.
+ exportOsgiService(ignite);
+
+ onAfterStart(ctx, null);
+ }
+
+ /**
+ * Stops Ignite when the bundle is stopping.
+ *
+ * @param ctx Bundle context.
+ * @throws Exception If failed.
+ */
+ @Override public final void stop(BundleContext ctx) throws Exception {
+ onBeforeStop(ctx);
+
+ try {
+ ignite.close();
+ }
+ catch (Throwable t) {
+ U.error(log, "Failed to stop Ignite via OSGi Activator [errMsg=" + t.getMessage() + ']', t);
+
+ onAfterStop(ctx, t);
+
+ return;
+ }
+
+ if (log.isInfoEnabled())
+ log.info("Stopped Ignite from OSGi Activator [name=" + ignite.name() + ']');
+
+ IgniteOsgiUtils.classloaders().remove(ignite);
+
+ onAfterStop(ctx, null);
+ }
+
+ /**
+ * This method is called before Ignite initialises.
+ * <p>
+ * The default implementation is empty. Override it to introduce custom logic.
+ *
+ * @param ctx The {@link BundleContext}.
+ */
+ protected void onBeforeStart(BundleContext ctx) {
+ // No-op.
+ }
+
+ /**
+ * This method is called after Ignite initialises, only if initialization succeeded.
+ * <p>
+ * The default implementation is empty. Override it to introduce custom logic.
+ *
+ * @param ctx The {@link BundleContext}.
+ * @param t Throwable in case an error occurred when starting. {@code null} otherwise.
+ */
+ protected void onAfterStart(BundleContext ctx, @Nullable Throwable t) {
+ // No-op.
+ }
+
+ /**
+ * This method is called before Ignite stops.
+ * <p>
+ * The default implementation is empty. Override it to introduce custom logic.
+ *
+ * @param ctx The {@link BundleContext}.
+ */
+ protected void onBeforeStop(BundleContext ctx) {
+ // No-op.
+ }
+
+ /**
+ * This method is called after Ignite stops, only if the operation succeeded.
+ * <p>
+ * The default implementation is empty. Override it to introduce custom logic.
+ *
+ * @param ctx The {@link BundleContext}.
+ * @param t Throwable in case an error occurred when stopping. {@code null} otherwise.
+ */
+ protected void onAfterStop(BundleContext ctx, @Nullable Throwable t) {
+ // No-op.
+ }
+
+ /**
+ * Override this method to provide the Ignite configuration this bundle will start.
+ *
+ * @return The Ignite configuration.
+ */
+ public abstract IgniteConfiguration igniteConfiguration();
+
+ /**
+ * Override this method to indicate which classloading strategy to use.
+ *
+ * @return The strategy.
+ */
+ public OsgiClassLoadingStrategyType classLoadingStrategy() {
+ return OsgiClassLoadingStrategyType.BUNDLE_DELEGATING;
+ }
+
+ /**
+ * Exports the Ignite instance onto the OSGi Service Registry.
+ *
+ * @param ignite Ignite.
+ */
+ private void exportOsgiService(Ignite ignite) {
+ Dictionary<String, String> dict = new Hashtable<>();
+
+ // Only add the service property if the grid name != null.
+ if (ignite.name() != null)
+ dict.put(OSGI_SERVICE_PROP_IGNITE_NAME, ignite.name());
+
+ bundleCtx.registerService(Ignite.class, ignite, dict);
+
+ if (log.isInfoEnabled())
+ log.info("Exported OSGi service for Ignite with properties: " + dict);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteOsgiUtils.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteOsgiUtils.java b/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteOsgiUtils.java
new file mode 100644
index 0000000..deda3e8
--- /dev/null
+++ b/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteOsgiUtils.java
@@ -0,0 +1,69 @@
+/*
+ * 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.osgi;
+
+import java.util.Map;
+import java.util.concurrent.ConcurrentMap;
+import org.apache.ignite.Ignite;
+import org.jsr166.ConcurrentHashMap8;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.FrameworkUtil;
+
+/**
+ * Helper class for OSGi.
+ */
+public class IgniteOsgiUtils {
+ /** Whether we are running in an OSGi container. */
+ private static boolean osgi = FrameworkUtil.getBundle(IgniteOsgiUtils.class) != null;
+
+ /** Maps Ignite instances to the ClassLoaders of the bundles they were started from. */
+ private static final ConcurrentMap<Ignite, ClassLoader> CLASSLOADERS = new ConcurrentHashMap8<>();
+
+ /**
+ * Private constructor.
+ */
+ private IgniteOsgiUtils() { }
+
+ /**
+ * Returns whether we are running in an OSGi environment.
+ *
+ * @return {@code true/false}.
+ */
+ public static boolean isOsgi() {
+ return osgi;
+ }
+
+ /**
+ * Returns a {@link Map} of {@link Ignite} instances and the classloaders of the {@link Bundle}s they were
+ * started from.
+ *
+ * @return The {@link Map}.
+ */
+ protected static Map<Ignite, ClassLoader> classloaders() {
+ return CLASSLOADERS;
+ }
+
+ /**
+ * Returns the number of grids currently running in this OSGi container.
+ *
+ * @return The grid count.
+ */
+ public static int gridCount() {
+ return CLASSLOADERS.size();
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/BundleDelegatingClassLoader.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/BundleDelegatingClassLoader.java b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/BundleDelegatingClassLoader.java
new file mode 100644
index 0000000..07c0682
--- /dev/null
+++ b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/BundleDelegatingClassLoader.java
@@ -0,0 +1,147 @@
+/*
+ * 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.osgi.classloaders;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.Enumeration;
+import org.apache.ignite.internal.util.tostring.GridToStringExclude;
+import org.apache.ignite.internal.util.typedef.internal.S;
+import org.osgi.framework.Bundle;
+
+/**
+ * A {@link ClassLoader} implementation delegating to a given OSGi bundle, and to the specified {@link ClassLoader}
+ * as a fallback.
+ */
+public class BundleDelegatingClassLoader extends ClassLoader {
+ /** The bundle which loaded Ignite. */
+ protected final Bundle bundle;
+
+ /** The fallback classloader, expected to be the ignite-core classloader. */
+ @GridToStringExclude
+ protected final ClassLoader clsLdr;
+
+ /**
+ * Constructor.
+ *
+ * @param bundle The bundle
+ */
+ public BundleDelegatingClassLoader(Bundle bundle) {
+ this(bundle, null);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param bundle The bundle.
+ * @param classLoader Fallback classloader.
+ */
+ public BundleDelegatingClassLoader(Bundle bundle, ClassLoader classLoader) {
+ this.bundle = bundle;
+ this.clsLdr = classLoader;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected Class<?> findClass(String name) throws ClassNotFoundException {
+ return bundle.loadClass(name);
+ }
+
+ /** {@inheritDoc} */
+ @Override protected URL findResource(String name) {
+ URL resource = bundle.getResource(name);
+
+ if (resource == null && clsLdr != null)
+ resource = clsLdr.getResource(name);
+
+ return resource;
+ }
+
+ /**
+ * Finds a given resource from within the {@link #bundle}.
+ *
+ * @param name The resource name.
+ * @return URLs of resources.
+ * @throws IOException
+ */
+ @SuppressWarnings({"unchecked", "rawtypes"})
+ protected Enumeration findResources(String name) throws IOException {
+ return bundle.getResources(name);
+ }
+
+ /**
+ * Loads a class trying the {@link #bundle} first, falling back to the ClassLoader {@link #clsLdr}.
+ *
+ * @param name Class name.
+ * @param resolve {@code true} to resolve the class.
+ * @return The Class.
+ * @throws ClassNotFoundException
+ */
+ @Override protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException {
+ Class<?> cls;
+
+ try {
+ cls = findClass(name);
+ }
+ catch (ClassNotFoundException e) {
+ if (clsLdr == null)
+ throw classNotFoundException(name);
+
+ try {
+ cls = clsLdr.loadClass(name);
+ }
+ catch (ClassNotFoundException e2) {
+ throw classNotFoundException(name);
+ }
+
+ }
+
+ if (resolve)
+ resolveClass(cls);
+
+ return cls;
+ }
+
+ /**
+ * Returns the {@link Bundle} to which this ClassLoader is associated.
+ *
+ * @return The Bundle.
+ */
+ public Bundle getBundle() {
+ return bundle;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(BundleDelegatingClassLoader.class, this);
+ }
+
+ /**
+ * Builds a {@link ClassNotFoundException}.
+ *
+ * @param clsName Class name.
+ * @return The exception.
+ */
+ protected ClassNotFoundException classNotFoundException(String clsName) {
+ String s = "Failed to resolve class [name=" + clsName +
+ ", bundleId=" + bundle.getBundleId() +
+ ", symbolicName=" + bundle.getSymbolicName() +
+ ", fallbackClsLdr=" + clsLdr + ']';
+
+ return new ClassNotFoundException(s);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/ContainerSweepClassLoader.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/ContainerSweepClassLoader.java b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/ContainerSweepClassLoader.java
new file mode 100644
index 0000000..e2e773a
--- /dev/null
+++ b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/ContainerSweepClassLoader.java
@@ -0,0 +1,134 @@
+/*
+ * 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.osgi.classloaders;
+
+import java.util.Set;
+import java.util.concurrent.ConcurrentMap;
+import org.apache.ignite.internal.util.GridConcurrentHashSet;
+import org.jsr166.ConcurrentHashMap8;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+
+/**
+ * A {@link ClassLoader} implementation that first attempts to load the class from the associated {@link Bundle}. As
+ * a fallback, it sweeps the entire OSGi container to find the requested class, returning the first hit.
+ * <p>
+ * It keeps a cache of resolved classes and unresolvable classes, in order to optimize subsequent lookups.
+ */
+public class ContainerSweepClassLoader extends BundleDelegatingClassLoader {
+ /** Classes resolved previously. */
+ private final ConcurrentMap<String, Bundle> resolved = new ConcurrentHashMap8<>();
+
+ /** Unresolvable classes. */
+ private final Set<String> nonResolvable = new GridConcurrentHashSet<>();
+
+ /**
+ * Constructor with a {@link Bundle} only.
+ *
+ * @param bundle The bundle.
+ */
+ public ContainerSweepClassLoader(Bundle bundle) {
+ super(bundle);
+ }
+
+ /**
+ * Constructor with a {@link Bundle} and another {@link ClassLoader} to check.
+ *
+ * @param bundle The bundle.
+ * @param classLoader The other classloader to check.
+ */
+ public ContainerSweepClassLoader(Bundle bundle, ClassLoader classLoader) {
+ super(bundle, classLoader);
+ }
+
+ /**
+ * Runs the same logic to find the class as {@link BundleDelegatingClassLoader}, but if not found, sweeps the
+ * OSGi container to locate the first {@link Bundle} that can load the class, and uses it to do so.
+ *
+ * @param name The classname.
+ * @param resolve Whether to resolve the class or not.
+ * @return The loaded class.
+ * @throws ClassNotFoundException
+ */
+ @Override protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException {
+ // If we know it's not resolvable, throw the exception immediately.
+ if (nonResolvable.contains(name))
+ throw classNotFoundException(name);
+
+ Class<?> cls;
+
+ // First, delegate to super, and return the class if found.
+ try {
+ cls = super.loadClass(name, resolve);
+ return cls;
+ }
+ catch (ClassNotFoundException e) {
+ // Continue.
+ }
+
+ // Else, check the cache.
+ if (resolved.containsKey(name))
+ return resolved.get(name).loadClass(name);
+
+ // If still unresolved, sweep the container.
+ cls = sweepContainer(name);
+
+ // If still unresolved, throw the exception.
+ if (cls == null)
+ throw classNotFoundException(name);
+
+ return cls;
+ }
+
+ /**
+ * Sweeps the OSGi container to find the first {@link Bundle} that can load the class.
+ *
+ * @param name The classname.
+ * @return The loaded class.
+ */
+ protected Class<?> sweepContainer(String name) {
+ Class<?> cls = null;
+
+ Bundle[] bundles = bundle.getBundleContext().getBundles();
+
+ int bundleIdx = 0;
+
+ for (; bundleIdx < bundles.length; bundleIdx++) {
+ Bundle b = bundles[bundleIdx];
+
+ // Skip bundles that haven't reached RESOLVED state; skip fragments.
+ if (b.getState() <= Bundle.RESOLVED || b.getHeaders().get(Constants.FRAGMENT_HOST) != null)
+ continue;
+
+ try {
+ cls = b.loadClass(name);
+ break;
+ }
+ catch (ClassNotFoundException e) {
+ // No-op.
+ }
+ }
+
+ if (cls == null)
+ nonResolvable.add(name);
+ else
+ resolved.put(name, bundles[bundleIdx]);
+
+ return cls;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/OsgiClassLoadingStrategyType.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/OsgiClassLoadingStrategyType.java b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/OsgiClassLoadingStrategyType.java
new file mode 100644
index 0000000..9afde42
--- /dev/null
+++ b/modules/osgi/src/main/java/org/apache/ignite/osgi/classloaders/OsgiClassLoadingStrategyType.java
@@ -0,0 +1,29 @@
+/*
+ * 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.osgi.classloaders;
+
+/**
+ * Enum for the user to indicate which type of {@link ClassLoader} Ignite should use.
+ */
+public enum OsgiClassLoadingStrategyType {
+ /** Use this value for {@link BundleDelegatingClassLoader}. */
+ BUNDLE_DELEGATING,
+
+ /** Use this value for {@link ContainerSweepClassLoader}. */
+ CONTAINER_SWEEP
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/AbstractIgniteKarafTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/AbstractIgniteKarafTest.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/AbstractIgniteKarafTest.java
new file mode 100644
index 0000000..786b543
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/AbstractIgniteKarafTest.java
@@ -0,0 +1,109 @@
+/*
+ * 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.osgi;
+
+import java.io.File;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import javax.inject.Inject;
+
+import org.apache.karaf.features.FeaturesService;
+
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.junit.PaxExam;
+import org.ops4j.pax.exam.karaf.options.LogLevelOption;
+import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
+import org.ops4j.pax.exam.spi.reactors.PerMethod;
+import org.osgi.framework.BundleContext;
+
+import static org.ops4j.pax.exam.CoreOptions.junitBundles;
+import static org.ops4j.pax.exam.CoreOptions.maven;
+import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
+import static org.ops4j.pax.exam.CoreOptions.options;
+import static org.ops4j.pax.exam.CoreOptions.systemProperty;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFileExtend;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.features;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.karafDistributionConfiguration;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.logLevel;
+
+/**
+ * Abstract test class that sets up an Apache Karaf container with Ignite installed.
+ */
+@RunWith(PaxExam.class)
+@ExamReactorStrategy(PerMethod.class)
+public abstract class AbstractIgniteKarafTest {
+ /** Features we do not expect to be installed. */
+ protected static final Set<String> IGNORED_FEATURES = new HashSet<>(
+ Arrays.asList("ignite-log4j", "ignite-scalar-2.10"));
+
+ /** Regex matching ignite features. */
+ protected static final String IGNITE_FEATURES_NAME_REGEX = "ignite.*";
+
+ /** Project version. */
+ protected static final String PROJECT_VERSION = System.getProperty("projectVersion");
+
+ /** Pax Exam will inject the Bundle Context here. */
+ @Inject
+ protected BundleContext bundleCtx;
+
+ /** Pax Exam will inject the Karaf Features Service. */
+ @Inject
+ protected FeaturesService featuresSvc;
+
+ /**
+ * Base configuration for a Karaf container running the specified Ignite features.
+ *
+ * @return The configuration.
+ */
+ public Option[] baseConfig() {
+ return options(
+
+ // Specify which version of Karaf to use.
+ karafDistributionConfiguration()
+ .frameworkUrl(maven().groupId("org.apache.karaf").artifactId("apache-karaf").type("tar.gz")
+ .versionAsInProject())
+ .karafVersion(System.getProperty("karafVersion"))
+ .useDeployFolder(false)
+ .unpackDirectory(new File("target/paxexam/unpack")),
+
+ // Add JUnit bundles.
+ junitBundles(),
+
+ // Add the additional JRE exports that Ignite requires.
+ editConfigurationFileExtend("etc/jre.properties", "jre-1.7", "sun.nio.ch"),
+ editConfigurationFileExtend("etc/jre.properties", "jre-1.8", "sun.nio.ch"),
+
+ // Make log level INFO.
+ logLevel(LogLevelOption.LogLevel.INFO),
+
+ // Add our features repository.
+ features(mavenBundle()
+ .groupId("org.apache.ignite").artifactId("ignite-osgi-karaf")
+ .version(System.getProperty("projectVersion")).type("xml/features"),
+ featuresToInstall().toArray(new String[0])),
+
+ // Propagate the projectVersion system property.
+ systemProperty("projectVersion").value(System.getProperty("projectVersion"))
+ );
+ }
+
+ protected abstract List<String> featuresToInstall();
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
new file mode 100644
index 0000000..c0eb06b
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteKarafFeaturesInstallationTest.java
@@ -0,0 +1,100 @@
+/*
+ * 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.osgi;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import org.apache.karaf.features.Feature;
+import org.junit.Test;
+import org.ops4j.pax.exam.Configuration;
+import org.ops4j.pax.exam.CoreOptions;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.karaf.options.KarafDistributionOption;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Pax Exam test class to check if all features could be resolved and installed.
+ */
+public class IgniteKarafFeaturesInstallationTest extends AbstractIgniteKarafTest {
+ /** Number of features expected to exist. */
+ private static final int EXPECTED_FEATURES = 25;
+
+ private static final String CAMEL_REPO_URI = "mvn:org.apache.camel.karaf/apache-camel/" +
+ System.getProperty("camelVersion") + "/xml/features";
+
+ /**
+ * Container configuration.
+ *
+ * @return The configuration.
+ */
+ @Configuration
+ public Option[] config() {
+ List<Option> options = new ArrayList<>(Arrays.asList(baseConfig()));
+
+ options.add(KarafDistributionOption.features(CAMEL_REPO_URI));
+
+ return CoreOptions.options(options.toArray(new Option[0]));
+ }
+
+ /**
+ * @throws Exception
+ */
+ @Test
+ public void testAllBundlesActiveAndFeaturesInstalled() throws Exception {
+ // Asssert all bundles except fragments are ACTIVE.
+ for (Bundle b : bundleCtx.getBundles()) {
+ System.out.println(String.format("Checking state of bundle [symbolicName=%s, state=%s]",
+ b.getSymbolicName(), b.getState()));
+
+ if (b.getHeaders().get(Constants.FRAGMENT_HOST) == null)
+ assertTrue(b.getState() == Bundle.ACTIVE);
+ }
+
+ // Check that according to the FeaturesService, all Ignite features except ignite-log4j are installed.
+ Feature[] features = featuresSvc.getFeatures(IGNITE_FEATURES_NAME_REGEX);
+
+ assertNotNull(features);
+ assertEquals(EXPECTED_FEATURES, features.length);
+
+ for (Feature f : features) {
+ if (IGNORED_FEATURES.contains(f.getName()))
+ continue;
+
+ boolean installed = featuresSvc.isInstalled(f);
+
+ System.out.println(String.format("Checking if feature is installed [featureName=%s, installed=%s]",
+ f.getName(), installed));
+
+ assertTrue(installed);
+ assertEquals(PROJECT_VERSION.replaceAll("-", "."), f.getVersion());
+ }
+ }
+
+ /**
+ * @return Features list.
+ */
+ @Override protected List<String> featuresToInstall() {
+ return Arrays.asList("ignite-all");
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiServiceTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiServiceTest.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiServiceTest.java
new file mode 100644
index 0000000..9a2e92d
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiServiceTest.java
@@ -0,0 +1,131 @@
+/*
+ * 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.osgi;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import javax.inject.Inject;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.osgi.activators.BasicIgniteTestActivator;
+import org.apache.ignite.osgi.activators.TestOsgiFlags;
+import org.apache.ignite.osgi.activators.TestOsgiFlagsImpl;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Configuration;
+import org.ops4j.pax.exam.CoreOptions;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.ProbeBuilder;
+import org.ops4j.pax.exam.TestProbeBuilder;
+import org.ops4j.pax.exam.junit.PaxExam;
+import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
+import org.ops4j.pax.exam.spi.reactors.PerMethod;
+import org.ops4j.pax.exam.util.Filter;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.ops4j.pax.exam.CoreOptions.streamBundle;
+import static org.ops4j.pax.tinybundles.core.TinyBundles.bundle;
+import static org.ops4j.pax.tinybundles.core.TinyBundles.withBnd;
+
+/**
+ * Pax Exam test class to check whether the Ignite service is exposed properly and whether lifecycle callbacks
+ * are invoked.
+ */
+@RunWith(PaxExam.class)
+@ExamReactorStrategy(PerMethod.class)
+public class IgniteOsgiServiceTest extends AbstractIgniteKarafTest {
+ /** Injects the Ignite OSGi service. */
+ @Inject @Filter("(ignite.name=testGrid)")
+ private Ignite ignite;
+
+ @Inject
+ private BundleContext bundleCtx;
+
+ /**
+ * @return Config.
+ */
+ @Configuration
+ public Option[] bundleDelegatingConfig() {
+ List<Option> options = new ArrayList<>(Arrays.asList(baseConfig()));
+
+ // Add bundles we require.
+ options.add(
+ streamBundle(bundle()
+ .add(BasicIgniteTestActivator.class)
+ .add(TestOsgiFlags.class)
+ .add(TestOsgiFlagsImpl.class)
+ .set(Constants.BUNDLE_SYMBOLICNAME, BasicIgniteTestActivator.class.getSimpleName())
+ .set(Constants.BUNDLE_ACTIVATOR, BasicIgniteTestActivator.class.getName())
+ .set(Constants.EXPORT_PACKAGE, "org.apache.ignite.osgi.activators")
+ .set(Constants.DYNAMICIMPORT_PACKAGE, "*")
+ .build(withBnd())));
+
+ // Uncomment this if you'd like to debug inside the container.
+ // options.add(KarafDistributionOption.debugConfiguration());
+
+ return CoreOptions.options(options.toArray(new Option[0]));
+ }
+
+ /**
+ * Builds the probe.
+ *
+ * @param probe The probe builder.
+ * @return The probe builder.
+ */
+ @ProbeBuilder
+ public TestProbeBuilder probeConfiguration(TestProbeBuilder probe) {
+ probe.setHeader(Constants.IMPORT_PACKAGE, "*,org.apache.ignite.osgi.activators");
+
+ return probe;
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ @Test
+ public void testServiceExposedAndCallbacksInvoked() throws Exception {
+ assertNotNull(ignite);
+ assertEquals("testGrid", ignite.name());
+
+ TestOsgiFlags flags = (TestOsgiFlags) bundleCtx.getService(
+ bundleCtx.getAllServiceReferences(TestOsgiFlags.class.getName(), null)[0]);
+
+ assertNotNull(flags);
+ assertEquals(Boolean.TRUE, flags.getOnBeforeStartInvoked());
+ assertEquals(Boolean.TRUE, flags.getOnAfterStartInvoked());
+
+ // The bundle is still not stopped, therefore these callbacks cannot be tested.
+ assertNull(flags.getOnBeforeStopInvoked());
+ assertNull(flags.getOnAfterStopInvoked());
+
+ // No exceptions.
+ assertNull(flags.getOnAfterStartThrowable());
+ assertNull(flags.getOnAfterStopThrowable());
+ }
+
+ /**
+ * @return Features.
+ */
+ @Override protected List<String> featuresToInstall() {
+ return Arrays.asList("ignite-core");
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiTestSuite.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiTestSuite.java
new file mode 100644
index 0000000..0a3d69c
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/IgniteOsgiTestSuite.java
@@ -0,0 +1,32 @@
+/*
+ * 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.osgi;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * Test suite for OSGi-related test cases.
+ * <p>
+ * NOTE: Have to use JUnit 4 annotations because Pax Exam is built on JUnit 4.
+ */
+@RunWith(Suite.class)
+@Suite.SuiteClasses({IgniteOsgiServiceTest.class, IgniteKarafFeaturesInstallationTest.class})
+public class IgniteOsgiTestSuite {
+ // No-op.
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/BasicIgniteTestActivator.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/BasicIgniteTestActivator.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/BasicIgniteTestActivator.java
new file mode 100644
index 0000000..c414092
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/BasicIgniteTestActivator.java
@@ -0,0 +1,76 @@
+/*
+ * 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.osgi.activators;
+
+import java.util.Hashtable;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.osgi.IgniteAbstractOsgiContextActivator;
+import org.apache.ignite.osgi.classloaders.OsgiClassLoadingStrategyType;
+import org.jetbrains.annotations.Nullable;
+import org.osgi.framework.BundleContext;
+
+/**
+ * Basic Ignite Activator for testing.
+ */
+public class BasicIgniteTestActivator extends IgniteAbstractOsgiContextActivator {
+ /** Flags to report our state to a watcher. */
+ private TestOsgiFlagsImpl flags = new TestOsgiFlagsImpl();
+
+ /**
+ * @return Ignite config.
+ */
+ @Override public IgniteConfiguration igniteConfiguration() {
+ IgniteConfiguration config = new IgniteConfiguration();
+
+ config.setGridName("testGrid");
+
+ return config;
+ }
+
+ /**
+ * @return Strategy.
+ */
+ @Override public OsgiClassLoadingStrategyType classLoadingStrategy() {
+ return OsgiClassLoadingStrategyType.BUNDLE_DELEGATING;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onBeforeStart(BundleContext ctx) {
+ flags.onBeforeStartInvoked = Boolean.TRUE;
+
+ // Export the flags as an OSGi service.
+ ctx.registerService(TestOsgiFlags.class, flags, new Hashtable<String, Object>());
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onAfterStart(BundleContext ctx, @Nullable Throwable t) {
+ flags.onAfterStartInvoked = Boolean.TRUE;
+ flags.onAfterStartThrowable = t;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onBeforeStop(BundleContext ctx) {
+ flags.onBeforeStopInvoked = Boolean.TRUE;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onAfterStop(BundleContext ctx, @Nullable Throwable t) {
+ flags.onAfterStopInvoked = Boolean.TRUE;
+ flags.onAfterStopThrowable = t;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlags.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlags.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlags.java
new file mode 100644
index 0000000..09a2d29
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlags.java
@@ -0,0 +1,53 @@
+/*
+ * 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.osgi.activators;
+
+/**
+ * Interface to export the flags in OSGi.
+ */
+public interface TestOsgiFlags {
+ /**
+ * @return The flag.
+ */
+ Boolean getOnBeforeStartInvoked();
+
+ /**
+ * @return The flag.
+ */
+ Boolean getOnAfterStartInvoked();
+
+ /**
+ * @return The flag.
+ */
+ Throwable getOnAfterStartThrowable();
+
+ /**
+ * @return The flag.
+ */
+ Boolean getOnBeforeStopInvoked();
+
+ /**
+ * @return The flag.
+ */
+ Boolean getOnAfterStopInvoked();
+
+ /**
+ * @return The flag.
+ */
+ Throwable getOnAfterStopThrowable();
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlagsImpl.java
----------------------------------------------------------------------
diff --git a/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlagsImpl.java b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlagsImpl.java
new file mode 100644
index 0000000..ccec2df
--- /dev/null
+++ b/modules/osgi/src/test/java/org/apache/ignite/osgi/activators/TestOsgiFlagsImpl.java
@@ -0,0 +1,83 @@
+/*
+ * 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.osgi.activators;
+
+/**
+ * Data transfer object representing flags we want to watch from the OSGi tests.
+ */
+public class TestOsgiFlagsImpl implements TestOsgiFlags {
+ /** onBeforeStartInvoked flag. */
+ public Boolean onBeforeStartInvoked;
+
+ /** onAfterStartInvoked flag. */
+ public Boolean onAfterStartInvoked;
+
+ /** onAfterStartThrowable flag. */
+ public Throwable onAfterStartThrowable;
+
+ /** onBeforeStartInvoked flag. */
+ public Boolean onBeforeStopInvoked;
+
+ /** onAfterStopInvoked flag. */
+ public Boolean onAfterStopInvoked;
+
+ /** onAfterStopThrowable flag. */
+ public Throwable onAfterStopThrowable;
+
+ /**
+ * @return The flag.
+ */
+ @Override public Boolean getOnBeforeStartInvoked() {
+ return onBeforeStartInvoked;
+ }
+
+ /**
+ * @return The flag.
+ */
+ @Override public Boolean getOnAfterStartInvoked() {
+ return onAfterStartInvoked;
+ }
+
+ /**
+ * @return The flag.
+ */
+ @Override public Throwable getOnAfterStartThrowable() {
+ return onAfterStartThrowable;
+ }
+
+ /**
+ * @return The flag.
+ */
+ @Override public Boolean getOnBeforeStopInvoked() {
+ return onBeforeStopInvoked;
+ }
+
+ /**
+ * @return The flag.
+ */
+ @Override public Boolean getOnAfterStopInvoked() {
+ return onAfterStopInvoked;
+ }
+
+ /**
+ * @return The flag.
+ */
+ @Override public Throwable getOnAfterStopThrowable() {
+ return onAfterStopThrowable;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index 3dc18d3..0780144 100644
--- a/modules/rest-http/pom.xml
+++ b/modules/rest-http/pom.xml
@@ -34,6 +34,13 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
+ <properties>
+ <osgi.export.package>
+ org.apache.ignite.internal.processors.rest.protocols.http.jetty,
+ {local-packages}
+ </osgi.export.package>
+ </properties>
+
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -44,13 +51,13 @@
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
- <version>8.0.23</version>
+ <version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
- <version>2.6</version>
+ <version>${commons.lang.version}</version>
</dependency>
<dependency>
@@ -92,38 +99,38 @@
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
- <version>2.4</version>
+ <version>${jsonlib.version}</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>net.sf.ezmorph</groupId>
<artifactId>ezmorph</artifactId>
- <version>1.0.6</version>
+ <version>${ezmorph.version}</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
+ <version>${commons.collections.version}</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
- <version>1.8.3</version>
+ <version>${commons.beanutils.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
- <version>1.7.7</version>
+ <version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
- <version>1.7.7</version>
+ <version>${slf4j.version}</version>
</dependency>
<dependency>
@@ -131,4 +138,15 @@
<artifactId>log4j</artifactId>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 83e515b..9a958eb 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.10.4</version>
+ <version>${scala210.library.version}</version>
</dependency>
<dependency>
@@ -109,6 +109,12 @@
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
</plugin>
+
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
</plugins>
<!-- TODO IGNITE-956 FIX scaladocs plugins-->
@@ -194,5 +200,6 @@
<!--</executions>-->
<!--</plugin>-->
<!--</plugins>-->
+
</build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index e78ce73..301a103 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.11.7</version>
+ <version>${scala211.library.version}</version>
</dependency>
<dependency>
@@ -184,6 +184,13 @@
</execution>
</executions>
</plugin>
+
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+
</plugins>
</build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index 6e687a6..cb53713 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -34,6 +34,13 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
+ <properties>
+ <osgi.export.package>
+ org.apache.ignite.internal.processors.schedule,
+ {local-packages}
+ </osgi.export.package>
+ </properties>
+
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -44,7 +51,7 @@
<dependency>
<groupId>it.sauronsoftware.cron4j</groupId>
<artifactId>cron4j</artifactId>
- <version>2.2.5</version>
+ <version>${cron4j.version}</version>
</dependency>
<dependency>
@@ -75,4 +82,20 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this fragment. It is a fragment because it contains internal processors
+ that would be looked up by ignite-core. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index 2fae337..36f6b13 100644
--- a/modules/schema-import/pom.xml
+++ b/modules/schema-import/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index 130ea19..1449549 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -44,7 +44,17 @@
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
- <version>1.6.4</version>
+ <version>${slf4j.version}</version>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index 627cc49..0b24898 100644
--- a/modules/spark-2.10/pom.xml
+++ b/modules/spark-2.10/pom.xml
@@ -52,7 +52,7 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.10.4</version>
+ <version>${scala210.library.version}</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index 2e90632..1808a0a 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -106,7 +106,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
<scope>test</scope>
</dependency>
@@ -118,11 +118,10 @@
<scope>test</scope>
</dependency>
-
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.175</version>
+ <version>${h2.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
@@ -136,5 +135,30 @@
</excludes>
</testResource>
</testResources>
+
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle.
+ This bundle is a fragment attached to the ignite-core bundle, as it contains and exports classes in the org.apache.ignite
+ leading to a split package situation in OSGi.
+ -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ <Require-Bundle>
+ org.apache.servicemix.bundles.spring-beans,
+ org.apache.servicemix.bundles.spring-context,
+ org.apache.servicemix.bundles.spring-context-support,
+ org.apache.servicemix.bundles.spring-core,
+ org.apache.servicemix.bundles.spring-expression,
+ org.apache.servicemix.bundles.spring-jdbc,
+ org.apache.servicemix.bundles.spring-tx
+ </Require-Bundle>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
</build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 1079c00..e1b0fe5 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
- <version>0.1.53</version>
+ <version>${jsch.version}</version>
</dependency>
<dependency>
@@ -69,4 +69,21 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <!-- This is a fragment because it's an internal processor module. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Fragment-Host>org.apache.ignite.ignite-core</Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/twitter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/twitter/pom.xml b/modules/twitter/pom.xml
index fc924f6..1649043 100644
--- a/modules/twitter/pom.xml
+++ b/modules/twitter/pom.xml
@@ -65,7 +65,7 @@
<dependency>
<groupId>com.twitter</groupId>
<artifactId>hbc-twitter4j</artifactId>
- <version>2.2.0</version>
+ <version>${twitter.hbc.version}</version>
</dependency>
<dependency>
@@ -118,4 +118,14 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index 5f2436e..37c77ba 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -80,19 +80,19 @@
<dependency>
<groupId>net.sf.jtidy</groupId>
<artifactId>jtidy</artifactId>
- <version>r938</version>
+ <version>${jtidy.version}</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
- <version>1.6</version>
+ <version>${commons.codec.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
- <version>8.0.23</version>
+ <version>${tomcat.version}</version>
<scope>test</scope>
</dependency>
@@ -145,4 +145,15 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/visor-console-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console-2.10/pom.xml b/modules/visor-console-2.10/pom.xml
index 8d1bd74..87ce699 100644
--- a/modules/visor-console-2.10/pom.xml
+++ b/modules/visor-console-2.10/pom.xml
@@ -80,13 +80,13 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.10.4</version>
+ <version>${scala210.library.version}</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>jline</artifactId>
- <version>2.10.4</version>
+ <version>${scala210.jline.version}</version>
</dependency>
<!-- Third party dependencies -->
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index 1ed21ae..d4fc6cf 100644
--- a/modules/visor-console/pom.xml
+++ b/modules/visor-console/pom.xml
@@ -80,7 +80,7 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.11.7</version>
+ <version>${scala211.library.version}</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index 5cdda0c..7754a4b 100644
--- a/modules/visor-plugins/pom.xml
+++ b/modules/visor-plugins/pom.xml
@@ -53,13 +53,13 @@
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
- <version>1.7.7</version>
+ <version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
- <version>1.7.7</version>
+ <version>${slf4j.version}</version>
</dependency>
<!-- Third party dependencies -->
</dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index c97e77b..d25ce61 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
- <version>8.0.23</version>
+ <version>${tomcat.version}</version>
</dependency>
<dependency>
@@ -89,4 +89,15 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/modules/zookeeper/pom.xml
----------------------------------------------------------------------
diff --git a/modules/zookeeper/pom.xml b/modules/zookeeper/pom.xml
index 8aa5730..8ade247 100644
--- a/modules/zookeeper/pom.xml
+++ b/modules/zookeeper/pom.xml
@@ -34,10 +34,6 @@
<version>1.5.0-b1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
- <properties>
- <curator.version>2.9.1</curator.version>
- </properties>
-
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
@@ -87,4 +83,14 @@
</dependency>
</dependencies>
+ <build>
+ <plugins>
+ <!-- Generate the OSGi MANIFEST.MF for this bundle. -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
[33/50] [abbrv] ignite git commit: IGNITE-1270 Implement basic
support for OSGi.
Posted by sb...@apache.org.
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index a7ae644..4fd7156 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -35,15 +35,87 @@
<properties>
<ignite.edition>fabric</ignite.edition>
- <hadoop.version>2.4.1</hadoop.version>
- <spark.version>1.5.2</spark.version>
- <spring.version>4.1.0.RELEASE</spring.version>
+
+ <!-- Build parameters. -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.build.timestamp.format>MMMM d yyyy</maven.build.timestamp.format>
<doxygen.exec>doxygen</doxygen.exec>
<git.exec>git</git.exec>
- <jetty.version>9.2.11.v20150529</jetty.version>
+ <maven.bundle.plugin.version>2.5.4</maven.bundle.plugin.version>
<javadoc.opts>-XDenableSunApiLintControl</javadoc.opts>
+
+ <!-- Dependency versions. -->
+ <activemq.version>5.12.0</activemq.version>
+ <aopalliance.bundle.version>1.0_6</aopalliance.bundle.version>
+ <asm.version>4.2</asm.version>
+ <aspectj.bundle.version>1.7.2_1</aspectj.bundle.version>
+ <aspectj.version>1.7.2</aspectj.version>
+ <aws.sdk.bundle.version>1.10.12_1</aws.sdk.bundle.version>
+ <aws.sdk.version>1.10.29</aws.sdk.version>
+ <camel.version>2.16.0</camel.version>
+ <commons.beanutils.bundle.version>1.8.3_1</commons.beanutils.bundle.version>
+ <commons.beanutils.version>1.8.3</commons.beanutils.version>
+ <commons.codec.version>1.6</commons.codec.version>
+ <commons.collections.version>3.2.1</commons.collections.version>
+ <commons.lang.version>2.6</commons.lang.version>
+ <cron4j.version>2.2.5</cron4j.version>
+ <curator.version>2.9.1</curator.version>
+ <ezmorph.bundle.version>1.0.6_1</ezmorph.bundle.version>
+ <ezmorph.version>1.0.6</ezmorph.version>
+ <flume.ng.version>1.6.0</flume.ng.version>
+ <guava.retrying.version>2.0.0</guava.retrying.version>
+ <guava.version>18.0</guava.version>
+ <guava14.version>14.0.1</guava14.version>
+ <guava16.version>16.0.1</guava16.version>
+ <h2.version>1.3.175</h2.version>
+ <hadoop.version>2.4.1</hadoop.version>
+ <httpclient.version>4.5.1</httpclient.version>
+ <httpcore.version>4.4.3</httpcore.version>
+ <jackson.version>1.9.13</jackson.version>
+ <javax.cache.bundle.version>1.0.0_1</javax.cache.bundle.version>
+ <javax.cache.version>1.0.0</javax.cache.version>
+ <jetty.version>9.2.11.v20150529</jetty.version>
+ <jms.spec.version>1.1.1</jms.spec.version>
+ <jsch.bundle.version>0.1.53_1</jsch.bundle.version>
+ <jsch.version>0.1.53</jsch.version>
+ <jsonlib.bundle.version>2.4_1</jsonlib.bundle.version>
+ <jsonlib.version>2.4</jsonlib.version>
+ <jtidy.version>r938</jtidy.version>
+ <kafka.bundle.version>0.8.2.1_1</kafka.bundle.version>
+ <kafka.clients.bundle.version>0.8.2.0_1</kafka.clients.bundle.version>
+ <kafka.clients.version>0.8.2.0</kafka.clients.version>
+ <kafka.version>0.8.2.1</kafka.version>
+ <kafka.version>0.8.2.1</kafka.version>
+ <karaf.version>4.0.2</karaf.version>
+ <lucene.bundle.version>3.5.0_1</lucene.bundle.version>
+ <lucene.version>3.5.0</lucene.version>
+ <oro.bundle.version>2.0.8_6</oro.bundle.version>
+ <osgi.core.version>5.0.0</osgi.core.version>
+ <osgi.enterprise.version>5.0.0</osgi.enterprise.version>
+ <paho.version>1.0.2</paho.version>
+ <scala210.jline.version>2.10.4</scala210.jline.version>
+ <scala210.library.version>2.10.4</scala210.library.version>
+ <scala211.library.version>2.11.7</scala211.library.version>
+ <slf4j.version>1.7.7</slf4j.version>
+ <slf4j16.version>1.6.4</slf4j16.version>
+ <spark.version>1.5.2</spark.version>
+ <spring.version>4.1.0.RELEASE</spring.version>
+ <spring41.osgi.feature.version>4.1.7.RELEASE_1</spring41.osgi.feature.version>
+ <tomcat.version>8.0.23</tomcat.version>
+ <twitter.hbc.version>2.2.0</twitter.hbc.version>
+ <yammer.metrics.annotation.version>2.2.0</yammer.metrics.annotation.version>
+ <yammer.metrics.core.version>2.2.0</yammer.metrics.core.version>
+ <zkclient.version>0.5</zkclient.version>
+ <zookeeper.version>3.4.6</zookeeper.version>
+
+ <!-- OSGI Manifest generation default property values -->
+ <osgi.import.package>*</osgi.import.package>
+ <osgi.export.package>{local-packages}</osgi.export.package>
+ <osgi.private.package></osgi.private.package>
+ <osgi.embed.dependency></osgi.embed.dependency>
+ <osgi.embed.transitive>false</osgi.embed.transitive>
+ <osgi.fail.ok>false</osgi.fail.ok>
+
</properties>
<groupId>org.apache.ignite</groupId>
@@ -182,6 +254,15 @@
</execution>
</executions>
</plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <useDefaultManifestFile>true</useDefaultManifestFile>
+ </configuration>
+ </plugin>
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
@@ -402,6 +483,52 @@
</bottom>
</configuration>
</plugin>
+
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>${maven.bundle.plugin.version}</version>
+ <extensions>true</extensions>
+ <configuration>
+ <archive>
+ <addMavenDescriptor>true</addMavenDescriptor>
+ </archive>
+ <supportedProjectTypes>
+ <supportedProjectType>jar</supportedProjectType>
+ <supportedProjectType>war</supportedProjectType>
+ </supportedProjectTypes>
+ <instructions>
+ <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
+ <Bundle-Version>${project.version}</Bundle-Version>
+ <Bundle-Vendor>${project.organization.name}</Bundle-Vendor>
+ <Bundle-Description>${project.description}</Bundle-Description>
+ <Bundle-DocURL>${project.url}</Bundle-DocURL>
+ <Import-Package>
+ ${osgi.import.package}
+ </Import-Package>
+ <Export-Package>
+ ${osgi.export.package}
+ </Export-Package>
+ <Private-Package>
+ ${osgi.private.package}
+ </Private-Package>
+ <Embed-Dependency>${osgi.embed.dependency}</Embed-Dependency>
+ <Embed-Directory>lib</Embed-Directory>
+ <Embed-Transitive>${osgi.embed.transitive}</Embed-Transitive>
+ <_failok>${osgi.fail.ok}</_failok>
+ <_invalidfilenames />
+ </instructions>
+ </configuration>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
</plugins>
</pluginManagement>
@@ -625,6 +752,7 @@
</execution>
</executions>
</plugin>
+
</plugins>
</build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/96e08027/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 5f86648..993eab2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -80,6 +80,9 @@
<module>modules/mqtt</module>
<module>modules/zookeeper</module>
<module>modules/camel</module>
+ <module>modules/osgi-paxlogging</module>
+ <module>modules/osgi-karaf</module>
+ <module>modules/osgi</module>
</modules>
<profiles>
[43/50] [abbrv] ignite git commit: Javadoc hotfix
Posted by sb...@apache.org.
Javadoc hotfix
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6a109ebd
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6a109ebd
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6a109ebd
Branch: refs/heads/master
Commit: 6a109ebd4c637b3ec6e298ae8cf785c422abebc1
Parents: d5fa3c1
Author: Anton Vinogradov <av...@apache.org>
Authored: Fri Dec 4 13:42:25 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Fri Dec 4 13:42:25 2015 +0300
----------------------------------------------------------------------
parent/pom.xml | 4 ++++
1 file changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6a109ebd/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index 4fd7156..68ba62b 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -428,6 +428,10 @@
<title>Spark Integration</title>
<packages>org.apache.ignite.spark.examples.java</packages>
</group>
+ <group>
+ <title>OSGi integration</title>
+ <packages>org.apache.ignite.osgi*</packages>
+ </group>
</groups>
<header>
<![CDATA[
[05/50] [abbrv] ignite git commit: fixed version
Posted by sb...@apache.org.
fixed version
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f5e9918f
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f5e9918f
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f5e9918f
Branch: refs/heads/master
Commit: f5e9918f80c6535844fffdb4ce63399e233f7b00
Parents: ecb3cb4
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Nov 30 23:10:12 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Nov 30 23:10:12 2015 +0300
----------------------------------------------------------------------
modules/platforms/cpp/common/configure.ac | 2 +-
modules/platforms/cpp/core-test/configure.ac | 2 +-
modules/platforms/cpp/core/configure.ac | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
modules/platforms/cpp/ignite/configure.ac | 2 +-
.../dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs | 4 ++--
.../platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 4 ++--
.../examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs | 4 ++--
12 files changed, 19 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/cpp/common/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/common/configure.ac b/modules/platforms/cpp/common/configure.ac
index 229cb9d..8f53ea3 100644
--- a/modules/platforms/cpp/common/configure.ac
+++ b/modules/platforms/cpp/common/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite JNI bridge for C++], [1.5.1.0], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
+AC_INIT([Apache Ignite JNI bridge for C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite-common], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/cpp/core-test/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/configure.ac b/modules/platforms/cpp/core-test/configure.ac
index 1612bea..14baf55 100644
--- a/modules/platforms/cpp/core-test/configure.ac
+++ b/modules/platforms/cpp/core-test/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Test], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Test], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/cpp/core/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/configure.ac b/modules/platforms/cpp/core/configure.ac
index 2733a46..f10eeb9 100644
--- a/modules/platforms/cpp/core/configure.ac
+++ b/modules/platforms/cpp/core/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/cpp/examples/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/configure.ac b/modules/platforms/cpp/examples/configure.ac
index 3ee5330..2d30028 100644
--- a/modules/platforms/cpp/examples/configure.ac
+++ b/modules/platforms/cpp/examples/configure.ac
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Ingnite C++ examples],[1.5.1.0],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
+AC_INIT([Ingnite C++ examples],[1.5.0-EA],[dec@ignite.apache.org],[ignite-examples],[ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/cpp/ignite/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/ignite/configure.ac b/modules/platforms/cpp/ignite/configure.ac
index 70b5c82..41d944c 100644
--- a/modules/platforms/cpp/ignite/configure.ac
+++ b/modules/platforms/cpp/ignite/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Runner], [1.5.1.0], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Runner], [1.5.0-EA], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CONFIG_SRCDIR(src)
AC_CANONICAL_SYSTEM
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 9819cff..db3e260 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
index 098f9b4..22776d3 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
@@ -45,5 +45,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index f2af079..979ccb8 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
index ffb68f5..0fbbdc1 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("97db45a8-f922-456a-a819-7b3c6e5e03ba")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index 93ee26a..bee163c 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index 5a510a1..bc75631 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e9918f/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index 3f81834..ab0af87 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Reflection;
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
-[assembly: AssemblyVersion("1.5.1.0")]
-[assembly: AssemblyFileVersion("1.5.1.0")]
+[assembly: AssemblyVersion("1.5.0.0")]
+[assembly: AssemblyFileVersion("1.5.0.0")]
[19/50] [abbrv] ignite git commit: IGNITE-1695 - Fixed writing
polymorphic types.
Posted by sb...@apache.org.
IGNITE-1695 - Fixed writing polymorphic types.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/2564a556
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/2564a556
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/2564a556
Branch: refs/heads/master
Commit: 2564a556e353269d4adc58160512ed9d0a5979b4
Parents: e0c970a
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Tue Dec 1 17:37:41 2015 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Tue Dec 1 17:37:41 2015 +0300
----------------------------------------------------------------------
.../internal/portable/BinaryFieldAccessor.java | 83 +++++++--
.../internal/portable/BinaryReaderExImpl.java | 11 ++
.../ignite/internal/util/IgniteUtils.java | 8 +
.../portable/BinaryMarshallerSelfTest.java | 186 ++++++++++++++++---
4 files changed, 249 insertions(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2564a556/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryFieldAccessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryFieldAccessor.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryFieldAccessor.java
index 0eda375..eece245 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryFieldAccessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryFieldAccessor.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.portable;
import org.apache.ignite.binary.BinaryObjectException;
import org.apache.ignite.internal.util.GridUnsafe;
+import org.apache.ignite.internal.util.typedef.internal.U;
import sun.misc.Unsafe;
import java.lang.reflect.Field;
@@ -74,8 +75,41 @@ public abstract class BinaryFieldAccessor {
case P_DOUBLE:
return new DoublePrimitiveAccessor(field, id);
+ case BYTE:
+ case BOOLEAN:
+ case SHORT:
+ case CHAR:
+ case INT:
+ case LONG:
+ case FLOAT:
+ case DOUBLE:
+ case DECIMAL:
+ case STRING:
+ case UUID:
+ case DATE:
+ case TIMESTAMP:
+ case BYTE_ARR:
+ case SHORT_ARR:
+ case INT_ARR:
+ case LONG_ARR:
+ case FLOAT_ARR:
+ case DOUBLE_ARR:
+ case CHAR_ARR:
+ case BOOLEAN_ARR:
+ case DECIMAL_ARR:
+ case STRING_ARR:
+ case UUID_ARR:
+ case DATE_ARR:
+ case TIMESTAMP_ARR:
+ case ENUM_ARR:
+ case OBJECT_ARR:
+ case PORTABLE_OBJ:
+ case PORTABLE:
+ case EXTERNALIZABLE:
+ return new DefaultFinalClassAccessor(field, id, mode, false);
+
default:
- return new DefaultAccessor(field, id, mode);
+ return new DefaultFinalClassAccessor(field, id, mode, !U.isFinal(field.getType()));
}
}
@@ -389,10 +423,13 @@ public abstract class BinaryFieldAccessor {
/**
* Default accessor.
*/
- private static class DefaultAccessor extends BinaryFieldAccessor {
+ private static class DefaultFinalClassAccessor extends BinaryFieldAccessor {
/** Target field. */
private final Field field;
+ /** Dynamic accessor flag. */
+ private final boolean dynamic;
+
/**
* Constructor.
*
@@ -400,12 +437,13 @@ public abstract class BinaryFieldAccessor {
* @param id Field ID.
* @param mode Mode.
*/
- public DefaultAccessor(Field field, int id, BinaryWriteMode mode) {
+ DefaultFinalClassAccessor(Field field, int id, BinaryWriteMode mode, boolean dynamic) {
super(id, mode);
assert field != null;
this.field = field;
+ this.dynamic = dynamic;
}
/** {@inheritDoc} */
@@ -424,7 +462,7 @@ public abstract class BinaryFieldAccessor {
throw new BinaryObjectException("Failed to get value for field: " + field, e);
}
- switch (mode) {
+ switch (mode(val)) {
case BYTE:
writer.writeByteField((Byte) val);
@@ -609,6 +647,25 @@ public abstract class BinaryFieldAccessor {
/** {@inheritDoc} */
@Override public void read(Object obj, BinaryReaderExImpl reader) throws BinaryObjectException {
+ Object val = dynamic ? reader.readField(id) : readFixedType(reader);
+
+ try {
+ if (val != null || !field.getType().isPrimitive())
+ field.set(obj, val);
+ }
+ catch (IllegalAccessException e) {
+ throw new BinaryObjectException("Failed to set value for field: " + field, e);
+ }
+ }
+
+ /**
+ * Reads fixed type from the given reader with flags validation.
+ *
+ * @param reader Reader to read from.
+ * @return Read value.
+ * @throws BinaryObjectException If failed to read value from the stream.
+ */
+ protected Object readFixedType(BinaryReaderExImpl reader) throws BinaryObjectException {
Object val = null;
switch (mode) {
@@ -793,13 +850,17 @@ public abstract class BinaryFieldAccessor {
assert false : "Invalid mode: " + mode;
}
- try {
- if (val != null || !field.getType().isPrimitive())
- field.set(obj, val);
- }
- catch (IllegalAccessException e) {
- throw new BinaryObjectException("Failed to set value for field: " + field, e);
- }
+ return val;
+ }
+
+ /**
+ * @param val Val to get write mode for.
+ * @return Write mode.
+ */
+ protected BinaryWriteMode mode(Object val) {
+ return dynamic ?
+ val == null ? BinaryWriteMode.OBJECT : PortableUtils.mode(val.getClass()) :
+ mode;
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/2564a556/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
index b9f851c..ddbf6ba 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/BinaryReaderExImpl.java
@@ -1628,6 +1628,17 @@ public class BinaryReaderExImpl implements BinaryReader, BinaryRawReaderEx, Bina
}
/**
+ * @return Deserialized object.
+ * @throws BinaryObjectException If failed.
+ */
+ @Nullable Object readField(int fieldId) throws BinaryObjectException {
+ if (!findFieldById(fieldId))
+ return null;
+
+ return new BinaryReaderExImpl(ctx, in, ldr, hnds).deserialize();
+ }
+
+ /**
* @param name Field name.
* @return Field offset.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/2564a556/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
index 3dfa9cc..121cd46 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
@@ -7667,6 +7667,14 @@ public abstract class IgniteUtils {
}
/**
+ * @param cls Class to check.
+ * @return {@code True} if class is final.
+ */
+ public static boolean isFinal(Class<?> cls) {
+ return Modifier.isFinal(cls.getModifiers());
+ }
+
+ /**
* Gets field value.
*
* @param cls Class.
http://git-wip-us.apache.org/repos/asf/ignite/blob/2564a556/modules/core/src/test/java/org/apache/ignite/internal/portable/BinaryMarshallerSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/portable/BinaryMarshallerSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/portable/BinaryMarshallerSelfTest.java
index cc035f6..49be8dd 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/portable/BinaryMarshallerSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/BinaryMarshallerSelfTest.java
@@ -21,6 +21,33 @@ import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.net.InetSocketAddress;
+import java.sql.Timestamp;
+import java.util.AbstractQueue;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Queue;
+import java.util.TreeMap;
+import java.util.TreeSet;
+import java.util.UUID;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentSkipListSet;
import junit.framework.Assert;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.binary.BinaryIdMapper;
@@ -47,32 +74,10 @@ import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.marshaller.MarshallerContextTestImpl;
import org.apache.ignite.testframework.GridTestUtils;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+import org.jetbrains.annotations.NotNull;
import org.jsr166.ConcurrentHashMap8;
import sun.misc.Unsafe;
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.math.BigDecimal;
-import java.math.BigInteger;
-import java.net.InetSocketAddress;
-import java.sql.Timestamp;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedHashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import java.util.TreeMap;
-import java.util.TreeSet;
-import java.util.UUID;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentSkipListSet;
-
import static org.apache.ignite.internal.portable.streams.PortableMemoryAllocator.INSTANCE;
import static org.junit.Assert.assertArrayEquals;
@@ -98,7 +103,7 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
* @throws Exception If failed.
*/
public void testByte() throws Exception {
- assertEquals((byte) 100, marshalUnmarshal((byte) 100).byteValue());
+ assertEquals((byte) 100, marshalUnmarshal((byte)100).byteValue());
}
/**
@@ -126,14 +131,14 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
* @throws Exception If failed.
*/
public void testFloat() throws Exception {
- assertEquals(100.001f, marshalUnmarshal(100.001f).floatValue(), 0);
+ assertEquals(100.001f, marshalUnmarshal(100.001f), 0);
}
/**
* @throws Exception If failed.
*/
public void testDouble() throws Exception {
- assertEquals(100.001d, marshalUnmarshal(100.001d).doubleValue(), 0);
+ assertEquals(100.001d, marshalUnmarshal(100.001d), 0);
}
/**
@@ -280,7 +285,7 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
* @throws Exception If failed.
*/
public void testDecimalArray() throws Exception {
- BigDecimal[] arr = new BigDecimal[] { BigDecimal.ZERO, BigDecimal.ONE, BigDecimal.TEN } ;
+ BigDecimal[] arr = new BigDecimal[] {BigDecimal.ZERO, BigDecimal.ONE, BigDecimal.TEN} ;
assertArrayEquals(arr, marshalUnmarshal(arr));
}
@@ -348,7 +353,7 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
*/
public void testMap() throws Exception {
testMap(new HashMap<Integer, String>());
- testMap(new LinkedHashMap());
+ testMap(new LinkedHashMap<Integer, String>());
testMap(new TreeMap<Integer, String>());
testMap(new ConcurrentHashMap8<Integer, String>());
testMap(new ConcurrentHashMap<Integer, String>());
@@ -385,6 +390,18 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
+ public void testExternalizableInEnclosing() throws Exception {
+ SimpleEnclosingObject obj = new SimpleEnclosingObject();
+ obj.simpl = new SimpleExternalizable("field");
+
+ SimpleEnclosingObject other = marshalUnmarshal(obj);
+
+ assertEquals(((SimpleExternalizable)obj.simpl).field, ((SimpleExternalizable)other.simpl).field);
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
public void testMapEntry() throws Exception {
Map.Entry<Integer, String> e = new GridMapEntry<>(1, "str1");
@@ -674,6 +691,111 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
}
/**
+ * @throws Exception If failed.
+ */
+ public void testObjectFieldOfExternalizableCollection() throws Exception {
+ EnclosingObj obj = new EnclosingObj();
+
+ obj.queue = new TestQueue("test");
+
+ assertEquals(obj, marshalUnmarshal(obj));
+ }
+
+ /**
+ *
+ */
+ private static class EnclosingObj implements Serializable {
+ /** Queue. */
+ Queue<Integer> queue = new TestQueue("test");
+
+ /** {@inheritDoc} */
+ @Override public boolean equals(Object o) {
+ if (this == o)
+ return true;
+
+ if (o == null || getClass() != o.getClass())
+ return false;
+
+ EnclosingObj obj = (EnclosingObj)o;
+
+ return Objects.equals(queue, obj.queue);
+ }
+
+ /** {@inheritDoc} */
+ @Override public int hashCode() {
+ return Objects.hash(queue);
+ }
+ }
+
+ /**
+ *
+ */
+ private static class TestQueue extends AbstractQueue<Integer> implements Externalizable {
+ /** Name. */
+ private String name;
+
+ /**
+ * @param name Name.
+ */
+ public TestQueue(String name) {
+ this.name = name;
+ }
+
+ /** {@inheritDoc} */
+ @NotNull @Override public Iterator<Integer> iterator() {
+ return Collections.emptyIterator();
+ }
+
+ /** {@inheritDoc} */
+ @Override public int size() {
+ return 0;
+ }
+
+ /** {@inheritDoc} */
+ @Override public void writeExternal(ObjectOutput out) throws IOException {
+ out.writeObject(name);
+ }
+
+ /** {@inheritDoc} */
+ @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+ name = (String)in.readObject();
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean offer(Integer integer) {
+ throw new UnsupportedOperationException();
+ }
+
+ /** {@inheritDoc} */
+ @Override public Integer poll() {
+ throw new UnsupportedOperationException();
+ }
+
+ /** {@inheritDoc} */
+ @Override public Integer peek() {
+ throw new UnsupportedOperationException();
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean equals(Object o) {
+ if (this == o)
+ return true;
+
+ if (o == null || getClass() != o.getClass())
+ return false;
+
+ TestQueue integers = (TestQueue)o;
+
+ return Objects.equals(name, integers.name);
+ }
+
+ /** {@inheritDoc} */
+ @Override public int hashCode() {
+ return Objects.hash(name);
+ }
+ }
+
+ /**
* @param obj Simple object.
* @param po Portable object.
*/
@@ -3642,6 +3764,14 @@ public class BinaryMarshallerSelfTest extends GridCommonAbstractTest {
/**
*
*/
+ public static class SimpleEnclosingObject {
+ /** */
+ private Object simpl;
+ }
+
+ /**
+ *
+ */
public static class SimpleExternalizable implements Externalizable {
/** */
private String field;
[12/50] [abbrv] ignite git commit: version fix
Posted by sb...@apache.org.
version fix
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/74054fb0
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/74054fb0
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/74054fb0
Branch: refs/heads/master
Commit: 74054fb04bba7e5b73c6c638c576d2344c5c6d2f
Parents: c850ae4
Author: Anton Vinogradov <av...@apache.org>
Authored: Tue Dec 1 14:36:13 2015 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Tue Dec 1 14:36:13 2015 +0300
----------------------------------------------------------------------
examples/pom.xml | 2 +-
examples/schema-import/pom.xml | 2 +-
modules/aop/pom.xml | 2 +-
modules/apache-license-gen/pom.xml | 2 +-
modules/aws/pom.xml | 2 +-
modules/camel/pom.xml | 2 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 2 +-
modules/core/src/main/resources/ignite.properties | 2 +-
modules/extdata/p2p/pom.xml | 2 +-
modules/extdata/uri/modules/uri-dependency/pom.xml | 2 +-
modules/extdata/uri/pom.xml | 2 +-
modules/flume/pom.xml | 2 +-
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/jms11/pom.xml | 2 +-
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/log4j2/pom.xml | 2 +-
modules/mesos/pom.xml | 2 +-
modules/mqtt/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 +-
modules/slf4j/pom.xml | 2 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
modules/ssh/pom.xml | 2 +-
modules/tools/pom.xml | 2 +-
modules/twitter/pom.xml | 2 +-
modules/urideploy/pom.xml | 2 +-
modules/visor-console-2.10/pom.xml | 2 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 2 +-
modules/yardstick/pom.xml | 2 +-
modules/yarn/pom.xml | 2 +-
modules/zookeeper/pom.xml | 2 +-
pom.xml | 2 +-
49 files changed, 49 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 1b79525..c018e1e 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -28,7 +28,7 @@
</parent>
<artifactId>ignite-examples</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/examples/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/examples/schema-import/pom.xml b/examples/schema-import/pom.xml
index ee6dc5e..d4eb3b3 100644
--- a/examples/schema-import/pom.xml
+++ b/examples/schema-import/pom.xml
@@ -35,7 +35,7 @@
</properties>
<artifactId>ignite-schema-import-demo</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index a2eb499..850af76 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aop</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/apache-license-gen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/apache-license-gen/pom.xml b/modules/apache-license-gen/pom.xml
index f7cbd71..c27595b 100644
--- a/modules/apache-license-gen/pom.xml
+++ b/modules/apache-license-gen/pom.xml
@@ -31,7 +31,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-apache-license-gen</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index 281334c..70bf9da 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aws</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/camel/pom.xml b/modules/camel/pom.xml
index 83982f8..a6ff52b 100644
--- a/modules/camel/pom.xml
+++ b/modules/camel/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-camel</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index 808aff0..af9b718 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-clients</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/cloud/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cloud/pom.xml b/modules/cloud/pom.xml
index 2b5c7e5..781e71f 100644
--- a/modules/cloud/pom.xml
+++ b/modules/cloud/pom.xml
@@ -29,7 +29,7 @@
</parent>
<artifactId>ignite-cloud</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/codegen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/codegen/pom.xml b/modules/codegen/pom.xml
index 26da227..0fc90cd 100644
--- a/modules/codegen/pom.xml
+++ b/modules/codegen/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-codegen</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 13c3b34..1fe5df4 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-core</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<repositories>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/core/src/main/resources/ignite.properties
----------------------------------------------------------------------
diff --git a/modules/core/src/main/resources/ignite.properties b/modules/core/src/main/resources/ignite.properties
index 96443e1..f0cbfdc 100644
--- a/modules/core/src/main/resources/ignite.properties
+++ b/modules/core/src/main/resources/ignite.properties
@@ -15,7 +15,7 @@
# limitations under the License.
#
-ignite.version=1.5.0-EA-SNAPSHOT
+ignite.version=1.5.0-EA1-SNAPSHOT
ignite.build=0
ignite.revision=DEV
ignite.rel.date=01011970
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/extdata/p2p/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/p2p/pom.xml b/modules/extdata/p2p/pom.xml
index b2515a1..1526269 100644
--- a/modules/extdata/p2p/pom.xml
+++ b/modules/extdata/p2p/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-extdata-p2p</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/extdata/uri/modules/uri-dependency/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/modules/uri-dependency/pom.xml b/modules/extdata/uri/modules/uri-dependency/pom.xml
index 0f4dc02..7a38ce5 100644
--- a/modules/extdata/uri/modules/uri-dependency/pom.xml
+++ b/modules/extdata/uri/modules/uri-dependency/pom.xml
@@ -27,7 +27,7 @@
<artifactId>ignite-extdata-uri-dep</artifactId>
<packaging>jar</packaging>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/extdata/uri/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index c335e82..ead6d4a 100644
--- a/modules/extdata/uri/pom.xml
+++ b/modules/extdata/uri/pom.xml
@@ -32,7 +32,7 @@
</parent>
<artifactId>ignite-extdata-uri</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/flume/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flume/pom.xml b/modules/flume/pom.xml
index 006e4a1..9e45ee0 100644
--- a/modules/flume/pom.xml
+++ b/modules/flume/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-flume</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/gce/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gce/pom.xml b/modules/gce/pom.xml
index 32e1155..4bc57b6 100644
--- a/modules/gce/pom.xml
+++ b/modules/gce/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-gce</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index ddbd491..bd51d64 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-geospatial</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index 0b0b229..cfb4bac 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hadoop</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index 82d56a5..ca6912e 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hibernate</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index ba224ba..5e06b3f 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-indexing</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index 8a47ac6..d7a4f5f 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jcl</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/jms11/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jms11/pom.xml b/modules/jms11/pom.xml
index 96290e2..fdb6f3d 100644
--- a/modules/jms11/pom.xml
+++ b/modules/jms11/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jms11</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index a51b8cb..45d66a4 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jta</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index 70519d2..a678912 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-kafka</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index e83ccca..c76252c 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/log4j2/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j2/pom.xml b/modules/log4j2/pom.xml
index 7221f08..e1b4b13 100644
--- a/modules/log4j2/pom.xml
+++ b/modules/log4j2/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j2</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/mesos/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mesos/pom.xml b/modules/mesos/pom.xml
index 9b7e8ed..d90f070 100644
--- a/modules/mesos/pom.xml
+++ b/modules/mesos/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mesos</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/mqtt/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mqtt/pom.xml b/modules/mqtt/pom.xml
index b786946..5f3c7bf 100644
--- a/modules/mqtt/pom.xml
+++ b/modules/mqtt/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mqtt</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index e777078..3608415 100644
--- a/modules/rest-http/pom.xml
+++ b/modules/rest-http/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-rest-http</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 82c07b6..1ff53a2 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar_2.10</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index 9106110..464d111 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index d26c833..a3cced6 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schedule</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index 3157dac..a0353b7 100644
--- a/modules/schema-import/pom.xml
+++ b/modules/schema-import/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schema-import</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index 14754eb..964d7bc 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-slf4j</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index 55c5386..9a7ae7d 100644
--- a/modules/spark-2.10/pom.xml
+++ b/modules/spark-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark_2.10</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/spark/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 386ef32..42d1992 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index 9b6446f..2481c3d 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spring</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 678fb28..5bb9dcb 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-ssh</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/tools/pom.xml
----------------------------------------------------------------------
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index 746466f..9c58bb6 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-tools</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/twitter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/twitter/pom.xml b/modules/twitter/pom.xml
index 644951f..289b315 100644
--- a/modules/twitter/pom.xml
+++ b/modules/twitter/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-twitter</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index 0008fba..79802d1 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-urideploy</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/visor-console-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console-2.10/pom.xml b/modules/visor-console-2.10/pom.xml
index ffa449c..3ce3104 100644
--- a/modules/visor-console-2.10/pom.xml
+++ b/modules/visor-console-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console_2.10</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index 69280c5..6d7a7e1 100644
--- a/modules/visor-console/pom.xml
+++ b/modules/visor-console/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index dc56f2e..2e524f3 100644
--- a/modules/visor-plugins/pom.xml
+++ b/modules/visor-plugins/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-plugins</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index b7c7daa..117d8ee 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/yardstick/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/pom.xml b/modules/yardstick/pom.xml
index 31fa2fd..4f518ff 100644
--- a/modules/yardstick/pom.xml
+++ b/modules/yardstick/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yardstick</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/yarn/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yarn/pom.xml b/modules/yarn/pom.xml
index d771d82..e8aa436 100644
--- a/modules/yarn/pom.xml
+++ b/modules/yarn/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yarn</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/modules/zookeeper/pom.xml
----------------------------------------------------------------------
diff --git a/modules/zookeeper/pom.xml b/modules/zookeeper/pom.xml
index af485f3..fc4ba24 100644
--- a/modules/zookeeper/pom.xml
+++ b/modules/zookeeper/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-zookeeper</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/74054fb0/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index af54e52..fdc4029 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>apache-ignite</artifactId>
- <version>1.5.0-EA-SNAPSHOT</version>
+ <version>1.5.0-EA1-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
[23/50] [abbrv] ignite git commit: ignite-2008 Added test reproducing
issue.
Posted by sb...@apache.org.
ignite-2008 Added test reproducing issue.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e7298adc
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e7298adc
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e7298adc
Branch: refs/heads/master
Commit: e7298adca37176956ffd93f1f01e32bef6626c12
Parents: bd99d1e
Author: sboikov <sb...@gridgain.com>
Authored: Thu Dec 3 09:51:37 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Dec 3 09:51:37 2015 +0300
----------------------------------------------------------------------
.../CacheLockReleaseNodeLeaveTest.java | 110 +++++++++++++++++++
1 file changed, 110 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7298adc/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
new file mode 100644
index 0000000..956aaef
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
@@ -0,0 +1,110 @@
+/*
+ * 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.cache.distributed;
+
+import java.util.concurrent.Callable;
+import java.util.concurrent.locks.Lock;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.internal.IgniteInternalFuture;
+import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+
+import static java.util.concurrent.TimeUnit.SECONDS;
+import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
+
+/**
+ *
+ */
+public class CacheLockReleaseNodeLeaveTest extends GridCommonAbstractTest {
+ /** */
+ private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder);
+
+ CacheConfiguration ccfg = new CacheConfiguration();
+
+ ccfg.setAtomicityMode(TRANSACTIONAL);
+
+ cfg.setCacheConfiguration(ccfg);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ stopAllGrids();
+
+ super.afterTest();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testLockRelease() throws Exception {
+ startGrids(2);
+
+ final Ignite ignite0 = ignite(0);
+ final Ignite ignite1 = ignite(1);
+
+ final Integer key = primaryKey(ignite1.cache(null));
+
+ IgniteInternalFuture<?> fut1 = GridTestUtils.runAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ Lock lock = ignite0.cache(null).lock(key);
+
+ lock.lock();
+
+ return null;
+ }
+ }, "lock-thread1");
+
+ fut1.get();
+
+ IgniteInternalFuture<?> fut2 = GridTestUtils.runAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ Lock lock = ignite1.cache(null).lock(key);
+
+ log.info("Start lock.");
+
+ lock.lock();
+
+ log.info("Locked.");
+
+ return null;
+ }
+ }, "lock-thread2");
+
+ U.sleep(1000);
+
+ log.info("Stop node.");
+
+ ignite0.close();
+
+ fut2.get(5, SECONDS);
+ }
+}