You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2017/02/17 09:59:11 UTC
[01/50] [abbrv] ignite git commit: IGNITE-4469: Hadoop: set default
value of offheap memory page and shuffle messages to 1Mb.
Repository: ignite
Updated Branches:
refs/heads/ignite-1.9 7b9cd0711 -> 4eac51cee
IGNITE-4469: Hadoop: set default value of offheap memory page and shuffle messages to 1Mb.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/072b9c26
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/072b9c26
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/072b9c26
Branch: refs/heads/ignite-1.9
Commit: 072b9c26dda4eb7a39d095d33c08d1611c891444
Parents: d92b88f
Author: devozerov <vo...@gridgain.com>
Authored: Wed Dec 21 13:08:30 2016 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Wed Dec 21 13:09:25 2016 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/hadoop/HadoopJobProperty.java | 4 ++--
.../internal/processors/hadoop/shuffle/HadoopShuffleJob.java | 2 +-
.../hadoop/shuffle/collections/HadoopMultimapBase.java | 5 ++++-
3 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/072b9c26/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
index 9dd430b..4398acd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
@@ -71,7 +71,7 @@ public enum HadoopJobProperty {
/**
* Size in bytes of single memory page which will be allocated for data structures in shuffle.
* <p>
- * By default is {@code 32 * 1024}.
+ * Defaults to {@code 1Mb}.
*/
SHUFFLE_OFFHEAP_PAGE_SIZE("ignite.shuffle.offheap.page.size"),
@@ -98,7 +98,7 @@ public enum HadoopJobProperty {
/**
* Defines approximate size in bytes of shuffle message which will be passed over wire from mapper to reducer.
* <p>
- * Defaults to 128Kb.
+ * Defaults to {@code 1Mb}.
*/
SHUFFLE_MSG_SIZE("ignite.shuffle.message.size"),
http://git-wip-us.apache.org/repos/asf/ignite/blob/072b9c26/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
index 214a335..1c546a1 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
@@ -76,7 +76,7 @@ import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.get
*/
public class HadoopShuffleJob<T> implements AutoCloseable {
/** */
- private static final int DFLT_SHUFFLE_MSG_SIZE = 128 * 1024;
+ private static final int DFLT_SHUFFLE_MSG_SIZE = 1024 * 1024;
/** */
private final HadoopJob job;
http://git-wip-us.apache.org/repos/asf/ignite/blob/072b9c26/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopMultimapBase.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopMultimapBase.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopMultimapBase.java
index 39b7c51..d7a4541 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopMultimapBase.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopMultimapBase.java
@@ -40,6 +40,9 @@ import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.get
* Base class for all multimaps.
*/
public abstract class HadoopMultimapBase implements HadoopMultimap {
+ /** Default offheap page size. */
+ private static final int DFLT_OFFHEAP_PAGE_SIZE = 1024 * 1024;
+
/** */
protected final GridUnsafeMemory mem;
@@ -59,7 +62,7 @@ public abstract class HadoopMultimapBase implements HadoopMultimap {
this.mem = mem;
- pageSize = get(jobInfo, SHUFFLE_OFFHEAP_PAGE_SIZE, 32 * 1024);
+ pageSize = get(jobInfo, SHUFFLE_OFFHEAP_PAGE_SIZE, DFLT_OFFHEAP_PAGE_SIZE);
}
/**
[22/50] [abbrv] ignite git commit: IGNITE-4520 Added credential
request for authentication on proxy.
Posted by vo...@apache.org.
IGNITE-4520 Added credential request for authentication on proxy.
(cherry picked from commit ef04f35)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f25f85af
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f25f85af
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f25f85af
Branch: refs/heads/ignite-1.9
Commit: f25f85afb9d9d5e91116086a6b3998a5bbb082b9
Parents: e832ef9
Author: Andrey Novikov <an...@gridgain.com>
Authored: Wed Jan 25 13:58:57 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Jan 25 15:00:53 2017 +0700
----------------------------------------------------------------------
.../web-agent/bin/ignite-web-agent.bat | 4 +-
.../web-agent/bin/ignite-web-agent.sh | 2 +
.../ignite/console/agent/AgentLauncher.java | 90 ++++++++++++++++++--
3 files changed, 88 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f25f85af/modules/web-console/web-agent/bin/ignite-web-agent.bat
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/bin/ignite-web-agent.bat b/modules/web-console/web-agent/bin/ignite-web-agent.bat
index 8291b55..1f1b52d 100644
--- a/modules/web-console/web-agent/bin/ignite-web-agent.bat
+++ b/modules/web-console/web-agent/bin/ignite-web-agent.bat
@@ -60,7 +60,9 @@ if %ERRORLEVEL% equ 0 (
if "%JVM_OPTS%" == "" set JVM_OPTS=-Xms1g -Xmx1g -server -XX:+AggressiveOpts -XX:MaxMetaspaceSize=256m
)
-"%JAVA_HOME%\bin\java.exe" %JVM_OPTS% -cp "*" org.apache.ignite.console.agent.AgentLauncher %*
+set JVM_OPTS=%JVM_OPTS% -Djava.net.useSystemProxies=true
+
+"%JAVA_HOME%\bin\java.exe" %JVM_OPTS% -cp "*" org.apache.ignite.console.agent.AgentLauncher %*
set JAVA_ERRORLEVEL=%ERRORLEVEL%
http://git-wip-us.apache.org/repos/asf/ignite/blob/f25f85af/modules/web-console/web-agent/bin/ignite-web-agent.sh
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/bin/ignite-web-agent.sh b/modules/web-console/web-agent/bin/ignite-web-agent.sh
index 2e9f041..c2958fc 100644
--- a/modules/web-console/web-agent/bin/ignite-web-agent.sh
+++ b/modules/web-console/web-agent/bin/ignite-web-agent.sh
@@ -88,4 +88,6 @@ if [ -z "$JVM_OPTS" ] ; then
fi
fi
+JVM_OPTS="${JVM_OPTS} -Djava.net.useSystemProxies=true"
+
"$JAVA" ${JVM_OPTS} -cp "*" org.apache.ignite.console.agent.AgentLauncher "$@"
http://git-wip-us.apache.org/repos/asf/ignite/blob/f25f85af/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
index 0c03d77..049791f 100644
--- a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
+++ b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
@@ -25,11 +25,15 @@ import io.socket.client.Socket;
import io.socket.emitter.Emitter;
import java.io.File;
import java.io.IOException;
+import java.net.Authenticator;
import java.net.ConnectException;
+import java.net.PasswordAuthentication;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.net.UnknownHostException;
import java.util.Arrays;
+import java.util.Scanner;
import java.util.concurrent.CountDownLatch;
import java.util.jar.Attributes;
import java.util.jar.Manifest;
@@ -76,9 +80,6 @@ public class AgentLauncher {
/** */
private static final String EVENT_AGENT_CLOSE = "agent:close";
- /** */
- private static final int RECONNECT_INTERVAL = 3000;
-
/**
* Create a trust manager that trusts all certificates It is not using a particular keyStore
*/
@@ -121,6 +122,15 @@ public class AgentLauncher {
System.exit(1);
}
+ ignore = X.cause(e, UnknownHostException.class);
+
+ if (ignore != null) {
+ log.error("Failed to establish connection to server, due to errors with DNS or missing proxy settings.");
+ log.error("Documentation for proxy configuration can be found here: http://apacheignite.readme.io/docs/web-agent#section-proxy-configuration");
+
+ System.exit(1);
+ }
+
ignore = X.cause(e, IOException.class);
if (ignore != null && "404".equals(ignore.getMessage())) {
@@ -129,6 +139,29 @@ public class AgentLauncher {
return;
}
+ if (ignore != null && "407".equals(ignore.getMessage())) {
+ log.error("Failed to establish connection to server, due to proxy requires authentication.");
+
+ String userName = System.getProperty("https.proxyUsername", System.getProperty("http.proxyUsername"));
+
+ if (userName == null || userName.trim().isEmpty())
+ userName = readLine("Enter proxy user name: ");
+ else
+ System.out.println("Read username from system properties: " + userName);
+
+ char[] pwd = readPassword("Enter proxy password: ");
+
+ final PasswordAuthentication pwdAuth = new PasswordAuthentication(userName, pwd);
+
+ Authenticator.setDefault(new Authenticator() {
+ @Override protected PasswordAuthentication getPasswordAuthentication() {
+ return pwdAuth;
+ }
+ });
+
+ return;
+ }
+
log.error("Connection error.", e);
}
}
@@ -144,6 +177,32 @@ public class AgentLauncher {
};
/**
+ * @param fmt Format string.
+ * @param args Arguments.
+ */
+ private static String readLine(String fmt, Object ... args) {
+ if (System.console() != null)
+ return System.console().readLine(fmt, args);
+
+ System.out.print(String.format(fmt, args));
+
+ return new Scanner(System.in).nextLine();
+ }
+
+ /**
+ * @param fmt Format string.
+ * @param args Arguments.
+ */
+ private static char[] readPassword(String fmt, Object ... args) {
+ if (System.console() != null)
+ return System.console().readPassword(fmt, args);
+
+ System.out.print(String.format(fmt, args));
+
+ return new Scanner(System.in).nextLine().toCharArray();
+ }
+
+ /**
* @param args Args.
*/
@SuppressWarnings("BusyWait")
@@ -214,9 +273,9 @@ public class AgentLauncher {
System.out.println("Security token is required to establish connection to the web console.");
System.out.println(String.format("It is available on the Profile page: https://%s/profile", webHost));
- System.out.print("Enter security tokens separated by comma: ");
+ String tokens = String.valueOf(readPassword("Enter security tokens separated by comma: "));
- cfg.tokens(Arrays.asList(System.console().readLine().trim().split(",")));
+ cfg.tokens(Arrays.asList(tokens.trim().split(",")));
}
final RestHandler restHnd = new RestHandler(cfg);
@@ -226,12 +285,29 @@ public class AgentLauncher {
URI uri = URI.create(cfg.serverUri());
+ // Create proxy authenticator using passed properties.
+ switch (uri.getScheme()) {
+ case "http":
+ case "https":
+ final String username = System.getProperty(uri.getScheme() + ".proxyUsername");
+ final char[] pwd = System.getProperty(uri.getScheme() + ".proxyPassword", "").toCharArray();
+
+ Authenticator.setDefault(new Authenticator() {
+ @Override protected PasswordAuthentication getPasswordAuthentication() {
+ return new PasswordAuthentication(username, pwd);
+ }
+ });
+
+ break;
+
+ default:
+ // No-op.
+ }
+
IO.Options opts = new IO.Options();
opts.path = "/agents";
- opts.reconnectionDelay = RECONNECT_INTERVAL;
-
// Workaround for use self-signed certificate
if (Boolean.getBoolean("trust.all")) {
SSLContext ctx = SSLContext.getInstance("TLS");
[33/50] [abbrv] ignite git commit: IGNITE-4621 Hang on broadcast when
BinaryUtils.FIELDS_SORTED_ORDER == true
Posted by vo...@apache.org.
IGNITE-4621 Hang on broadcast when BinaryUtils.FIELDS_SORTED_ORDER == true
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f505e209
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f505e209
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f505e209
Branch: refs/heads/ignite-1.9
Commit: f505e2095ce509d738b06e9442556e793fa05ab5
Parents: 6667f3b
Author: Anton Vinogradov <av...@apache.org>
Authored: Mon Jan 30 17:18:03 2017 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Wed Feb 1 14:31:59 2017 +0300
----------------------------------------------------------------------
.../ignite/internal/binary/BinaryContext.java | 3 +
.../ignite/internal/binary/BinaryTreeMap.java | 6 +-
.../resources/META-INF/classnames.properties | 62 +++++++++++++++-----
3 files changed, 54 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f505e209/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
index 2237c27..1ad2a0f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
@@ -191,6 +191,9 @@ public class BinaryContext {
sysClss.add(GridClosureProcessor.C4V2.class.getName());
sysClss.add(GridClosureProcessor.C4MLAV2.class.getName());
+ // BinaryUtils.FIELDS_SORTED_ORDER support, since it uses TreeMap at BinaryMetadata.
+ sysClss.add(BinaryTreeMap.class.getName());
+
if (BinaryUtils.wrapTrees()) {
sysClss.add(TreeMap.class.getName());
sysClss.add(TreeSet.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/f505e209/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
index 6a7cf9b..3dae8ce 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.binary;
+import java.io.Serializable;
import org.apache.ignite.binary.BinaryObjectException;
import org.apache.ignite.binary.BinaryRawReader;
import org.apache.ignite.binary.BinaryRawWriter;
@@ -32,7 +33,10 @@ import java.util.TreeMap;
/**
* Binary {@link TreeMap} wrapper.
*/
-public class BinaryTreeMap implements Binarylizable {
+public class BinaryTreeMap implements Binarylizable, Serializable {
+ /** */
+ private static final long serialVersionUID = 0L;
+
/** Original map. */
private TreeMap map;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f505e209/modules/core/src/main/resources/META-INF/classnames.properties
----------------------------------------------------------------------
diff --git a/modules/core/src/main/resources/META-INF/classnames.properties b/modules/core/src/main/resources/META-INF/classnames.properties
index 8a6dc66..df605da 100644
--- a/modules/core/src/main/resources/META-INF/classnames.properties
+++ b/modules/core/src/main/resources/META-INF/classnames.properties
@@ -241,6 +241,7 @@ org.apache.ignite.internal.binary.BinaryObjectOffheapImpl
org.apache.ignite.internal.binary.BinaryReaderExImpl$Flag
org.apache.ignite.internal.binary.BinarySchema
org.apache.ignite.internal.binary.BinarySchema$Confirmation
+org.apache.ignite.internal.binary.BinaryTreeMap
org.apache.ignite.internal.binary.BinaryWriteMode
org.apache.ignite.internal.binary.builder.BinaryLazyMap$1$1$1
org.apache.ignite.internal.client.GridClientAuthenticationException
@@ -294,12 +295,17 @@ org.apache.ignite.internal.jdbc2.JdbcDatabaseMetadata$UpdateMetadataTask
org.apache.ignite.internal.jdbc2.JdbcQueryTask
org.apache.ignite.internal.jdbc2.JdbcQueryTask$1
org.apache.ignite.internal.jdbc2.JdbcQueryTask$QueryResult
+org.apache.ignite.internal.jdbc2.JdbcQueryTaskV2
+org.apache.ignite.internal.jdbc2.JdbcQueryTaskV2$1
+org.apache.ignite.internal.jdbc2.JdbcQueryTaskV2$QueryResult
+org.apache.ignite.internal.jdbc2.JdbcSqlFieldsQuery
org.apache.ignite.internal.managers.GridManagerAdapter$1$1
org.apache.ignite.internal.managers.checkpoint.GridCheckpointManager$CheckpointSet
org.apache.ignite.internal.managers.checkpoint.GridCheckpointRequest
org.apache.ignite.internal.managers.communication.GridIoManager$ConcurrentHashMap0
org.apache.ignite.internal.managers.communication.GridIoMessage
org.apache.ignite.internal.managers.communication.GridIoUserMessage
+org.apache.ignite.internal.managers.communication.IgniteIoTestMessage
org.apache.ignite.internal.managers.deployment.GridDeploymentInfoBean
org.apache.ignite.internal.managers.deployment.GridDeploymentPerVersionStore$2
org.apache.ignite.internal.managers.deployment.GridDeploymentRequest
@@ -376,9 +382,9 @@ org.apache.ignite.internal.processors.cache.GridCacheAdapter$12
org.apache.ignite.internal.processors.cache.GridCacheAdapter$13
org.apache.ignite.internal.processors.cache.GridCacheAdapter$14
org.apache.ignite.internal.processors.cache.GridCacheAdapter$15
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$16$1
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$16
org.apache.ignite.internal.processors.cache.GridCacheAdapter$17
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$18
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$18$1
org.apache.ignite.internal.processors.cache.GridCacheAdapter$2
org.apache.ignite.internal.processors.cache.GridCacheAdapter$26$1
org.apache.ignite.internal.processors.cache.GridCacheAdapter$28
@@ -387,20 +393,20 @@ org.apache.ignite.internal.processors.cache.GridCacheAdapter$3
org.apache.ignite.internal.processors.cache.GridCacheAdapter$30
org.apache.ignite.internal.processors.cache.GridCacheAdapter$32
org.apache.ignite.internal.processors.cache.GridCacheAdapter$4
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$48
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$49
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$50
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$51
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$52
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$53
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$54
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$55
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$57
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$58
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$58$1
+org.apache.ignite.internal.processors.cache.GridCacheAdapter$59
org.apache.ignite.internal.processors.cache.GridCacheAdapter$6
org.apache.ignite.internal.processors.cache.GridCacheAdapter$60
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$61
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$62
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$63
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$64
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$65
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$66
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$67
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$69
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$70
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$70$1
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$71
-org.apache.ignite.internal.processors.cache.GridCacheAdapter$72
org.apache.ignite.internal.processors.cache.GridCacheAdapter$9
org.apache.ignite.internal.processors.cache.GridCacheAdapter$AsyncOp$1
org.apache.ignite.internal.processors.cache.GridCacheAdapter$AsyncOp$1$1
@@ -1111,6 +1117,12 @@ org.apache.ignite.internal.processors.hadoop.HadoopJobStatus
org.apache.ignite.internal.processors.hadoop.HadoopMapReducePlan
org.apache.ignite.internal.processors.hadoop.HadoopTaskInfo
org.apache.ignite.internal.processors.hadoop.HadoopTaskType
+org.apache.ignite.internal.processors.hadoop.message.HadoopMessage
+org.apache.ignite.internal.processors.hadoop.shuffle.HadoopDirectShuffleMessage
+org.apache.ignite.internal.processors.hadoop.shuffle.HadoopShuffleAck
+org.apache.ignite.internal.processors.hadoop.shuffle.HadoopShuffleFinishRequest
+org.apache.ignite.internal.processors.hadoop.shuffle.HadoopShuffleFinishResponse
+org.apache.ignite.internal.processors.hadoop.shuffle.HadoopShuffleMessage
org.apache.ignite.internal.processors.igfs.IgfsAckMessage
org.apache.ignite.internal.processors.igfs.IgfsAttributes
org.apache.ignite.internal.processors.igfs.IgfsBlockKey
@@ -1208,6 +1220,7 @@ org.apache.ignite.internal.processors.platform.cache.PlatformCacheEntryProcessor
org.apache.ignite.internal.processors.platform.cache.PlatformCachePartialUpdateException
org.apache.ignite.internal.processors.platform.cache.affinity.PlatformAffinity$1
org.apache.ignite.internal.processors.platform.cache.affinity.PlatformAffinityFunction
+org.apache.ignite.internal.processors.platform.cache.expiry.PlatformExpiryPolicyFactory
org.apache.ignite.internal.processors.platform.cache.query.PlatformContinuousQuery
org.apache.ignite.internal.processors.platform.cache.query.PlatformContinuousQueryFilter
org.apache.ignite.internal.processors.platform.cache.query.PlatformContinuousQueryImpl
@@ -1244,6 +1257,9 @@ org.apache.ignite.internal.processors.platform.dotnet.PlatformDotNetCacheStore$9
org.apache.ignite.internal.processors.platform.dotnet.PlatformDotNetConfigurationClosure
org.apache.ignite.internal.processors.platform.dotnet.PlatformDotNetService
org.apache.ignite.internal.processors.platform.dotnet.PlatformDotNetServiceImpl
+org.apache.ignite.internal.processors.platform.entityframework.PlatformDotNetEntityFrameworkCacheExtension$CleanupCompletionListener
+org.apache.ignite.internal.processors.platform.entityframework.PlatformDotNetEntityFrameworkCacheExtension$RemoveOldEntriesRunnable
+org.apache.ignite.internal.processors.platform.entityframework.PlatformDotNetEntityFrameworkIncreaseVersionProcessor
org.apache.ignite.internal.processors.platform.events.PlatformEventFilterListenerImpl
org.apache.ignite.internal.processors.platform.message.PlatformMessageFilter
org.apache.ignite.internal.processors.platform.messaging.PlatformMessageFilterImpl
@@ -1266,6 +1282,7 @@ org.apache.ignite.internal.processors.query.GridQueryProcessor$6
org.apache.ignite.internal.processors.query.GridQueryProcessor$7
org.apache.ignite.internal.processors.query.GridQueryProcessor$8
org.apache.ignite.internal.processors.query.GridQueryProcessor$IndexType
+org.apache.ignite.internal.processors.query.IgniteSQLException
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryCancelRequest
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryFailResponse
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageRequest
@@ -1331,6 +1348,9 @@ org.apache.ignite.internal.processors.rest.handlers.datastructures.DataStructure
org.apache.ignite.internal.processors.rest.handlers.query.CacheQueryFieldsMetaResult
org.apache.ignite.internal.processors.rest.handlers.query.CacheQueryResult
org.apache.ignite.internal.processors.rest.handlers.query.QueryCommandHandler$QueryCursorIterator
+org.apache.ignite.internal.processors.rest.handlers.redis.GridRedisRestCommandHandler$1
+org.apache.ignite.internal.processors.rest.handlers.redis.exception.GridRedisGenericException
+org.apache.ignite.internal.processors.rest.handlers.redis.exception.GridRedisTypeException
org.apache.ignite.internal.processors.rest.handlers.task.GridTaskCommandHandler$2
org.apache.ignite.internal.processors.rest.handlers.task.GridTaskCommandHandler$ExeCallable
org.apache.ignite.internal.processors.rest.handlers.task.GridTaskResultRequest
@@ -1342,6 +1362,9 @@ org.apache.ignite.internal.processors.rest.protocols.tcp.GridTcpMemcachedNioList
org.apache.ignite.internal.processors.rest.protocols.tcp.GridTcpMemcachedNioListener$2
org.apache.ignite.internal.processors.rest.protocols.tcp.GridTcpRestNioListener$1
org.apache.ignite.internal.processors.rest.protocols.tcp.GridTcpRestNioListener$1$1
+org.apache.ignite.internal.processors.rest.protocols.tcp.redis.GridRedisCommand
+org.apache.ignite.internal.processors.rest.protocols.tcp.redis.GridRedisMessage
+org.apache.ignite.internal.processors.rest.protocols.tcp.redis.GridRedisNioListener$1
org.apache.ignite.internal.processors.rest.request.RestQueryRequest$QueryType
org.apache.ignite.internal.processors.service.GridServiceAssignments
org.apache.ignite.internal.processors.service.GridServiceAssignmentsKey
@@ -1586,10 +1609,14 @@ org.apache.ignite.internal.util.lang.IgniteReducer2X
org.apache.ignite.internal.util.lang.IgniteReducer3
org.apache.ignite.internal.util.lang.IgniteReducer3X
org.apache.ignite.internal.util.lang.IgniteReducerX
+org.apache.ignite.internal.util.lang.IgniteSingletonIterator
org.apache.ignite.internal.util.nio.GridNioEmbeddedFuture$1
org.apache.ignite.internal.util.nio.GridNioException
org.apache.ignite.internal.util.nio.GridNioMessageTracker
org.apache.ignite.internal.util.nio.GridNioServer$NioOperation
+org.apache.ignite.internal.util.nio.GridNioServer$RandomBalancer
+org.apache.ignite.internal.util.nio.GridNioServer$ReadWriteSizeBasedBalancer
+org.apache.ignite.internal.util.nio.GridNioServer$SizeBasedBalancer
org.apache.ignite.internal.util.nio.GridNioSessionMetaKey
org.apache.ignite.internal.util.nio.ssl.GridNioSslHandler
org.apache.ignite.internal.util.offheap.GridOffHeapEvent
@@ -1864,12 +1891,15 @@ org.apache.ignite.spi.checkpoint.sharedfs.SharedFsCheckpointData
org.apache.ignite.spi.collision.jobstealing.JobStealingRequest
org.apache.ignite.spi.collision.priorityqueue.PriorityQueueCollisionSpi$PriorityGridCollisionJobContextComparator
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$1
+org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$10
+org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$11
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$2$ConnectClosure
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$2$ConnectClosure$1
-org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$8
-org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$9
+org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$2$ConnectClosureNew
+org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$2$ConnectClosureNew$1
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$HandshakeClosure
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$HandshakeMessage
+org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$HandshakeMessage2
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$HandshakeTimeoutException
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$NodeIdMessage
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$RecoveryLastReceivedMessage
[36/50] [abbrv] ignite git commit: IGNITE-4610 Added more informative
message.
Posted by vo...@apache.org.
IGNITE-4610 Added more informative message.
(cherry picked from commit 9ff2a8f)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ad91eac2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ad91eac2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ad91eac2
Branch: refs/heads/ignite-1.9
Commit: ad91eac2d67d594f4a3def7fdfa2590ef5721b63
Parents: d22bcf6
Author: Andrey Novikov <an...@gridgain.com>
Authored: Fri Feb 3 11:58:43 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Fri Feb 3 12:15:41 2017 +0700
----------------------------------------------------------------------
modules/web-console/frontend/views/templates/agent-download.jade | 2 +-
modules/web-console/web-agent/README.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad91eac2/modules/web-console/frontend/views/templates/agent-download.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/agent-download.jade b/modules/web-console/frontend/views/templates/agent-download.jade
index 20b6b03..f57bf1d 100644
--- a/modules/web-console/frontend/views/templates/agent-download.jade
+++ b/modules/web-console/frontend/views/templates/agent-download.jade
@@ -41,7 +41,7 @@
p Connection to Ignite Web Agent is established, but agent failed to connect to Ignite Node
p Please check the following:
ul
- li Ignite Grid is up and running
+ li Ignite Grid is up and Ignite REST server started (copy "ignite-rest-http" folder from libs/optional/ to libs/)
li In agent settings check URI for connect to Ignite REST server
li Check agent logs for errors
li Refer to #[b README.txt] in agent folder for more information
http://git-wip-us.apache.org/repos/asf/ignite/blob/ad91eac2/modules/web-console/web-agent/README.txt
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/README.txt b/modules/web-console/web-agent/README.txt
index cc0c80f..81df1cb 100644
--- a/modules/web-console/web-agent/README.txt
+++ b/modules/web-console/web-agent/README.txt
@@ -32,7 +32,7 @@ Security tokens:
3) One may specify several comma separated tokens using configuration file or command line arguments of web agent.
Ignite Web agent requirements:
- 1) In order to communicate with web agent Ignite node should be started with REST server (move ignite-rest-http folder from lib/optional/ to lib/).
+ 1) In order to communicate with web agent Ignite node should be started with REST server (copy "ignite-rest-http" folder from "libs/optional/" to "libs/").
2) Configure web agent serverURI property by Ignite node REST server URI.
Options:
[17/50] [abbrv] ignite git commit: Merge ignite-4499.
Posted by vo...@apache.org.
Merge ignite-4499.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/db84b9b6
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/db84b9b6
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/db84b9b6
Branch: refs/heads/ignite-1.9
Commit: db84b9b6e39ac37791b35479bccb8bbd75bb1676
Parents: 09ed128
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jan 23 11:26:18 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jan 23 11:26:18 2017 +0300
----------------------------------------------------------------------
.../spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java | 5 +++--
.../communication/tcp/TcpCommunicationSpiFaultyClientTest.java | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/db84b9b6/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java
index d29231e..2b49d53 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiDropNodesTest.java
@@ -297,7 +297,8 @@ public class TcpCommunicationSpiDropNodesTest extends GridCommonAbstractTest {
*/
private static class TestCommunicationSpi extends TcpCommunicationSpi {
/** {@inheritDoc} */
- @Override protected GridCommunicationClient createTcpClient(ClusterNode node) throws IgniteCheckedException {
+ @Override protected GridCommunicationClient createTcpClient(ClusterNode node, int connIdx)
+ throws IgniteCheckedException {
if (pred.apply(getLocalNode(), node)) {
Map<String, Object> attrs = new HashMap<>(node.attributes());
@@ -309,7 +310,7 @@ public class TcpCommunicationSpiDropNodesTest extends GridCommonAbstractTest {
((TcpDiscoveryNode)node).setAttributes(attrs);
}
- return super.createTcpClient(node);
+ return super.createTcpClient(node, connIdx);
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/db84b9b6/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java
index 6e99487..f9756e9 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java
@@ -245,7 +245,8 @@ public class TcpCommunicationSpiFaultyClientTest extends GridCommonAbstractTest
*/
private static class TestCommunicationSpi extends TcpCommunicationSpi {
/** {@inheritDoc} */
- @Override protected GridCommunicationClient createTcpClient(ClusterNode node) throws IgniteCheckedException {
+ @Override protected GridCommunicationClient createTcpClient(ClusterNode node, int connIdx)
+ throws IgniteCheckedException {
if (PRED.apply(node)) {
Map<String, Object> attrs = new HashMap<>(node.attributes());
@@ -257,7 +258,7 @@ public class TcpCommunicationSpiFaultyClientTest extends GridCommonAbstractTest
((TcpDiscoveryNode)node).setAttributes(attrs);
}
- return super.createTcpClient(node);
+ return super.createTcpClient(node, connIdx);
}
/**
[14/50] [abbrv] ignite git commit: IGNITE-4507: Hadoop: added direct
output support for combiner. This closes #1434.
Posted by vo...@apache.org.
IGNITE-4507: Hadoop: added direct output support for combiner. This closes #1434.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/476b089b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/476b089b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/476b089b
Branch: refs/heads/ignite-1.9
Commit: 476b089b1dd4b4c5d3b6ae21e1b3b2c010c086ac
Parents: b6005b0
Author: tledkov-gridgain <tl...@gridgain.com>
Authored: Fri Jan 20 17:33:34 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Fri Jan 20 17:35:39 2017 +0300
----------------------------------------------------------------------
.../processors/hadoop/HadoopTaskContext.java | 10 +++
.../hadoop/impl/v1/HadoopV1MapTask.java | 89 +++++++++++---------
.../hadoop/impl/v1/HadoopV1ReduceTask.java | 69 +++++++++------
.../hadoop/impl/v2/HadoopV2Context.java | 10 ---
.../hadoop/impl/v2/HadoopV2MapTask.java | 18 ++--
.../hadoop/impl/v2/HadoopV2ReduceTask.java | 14 +++
.../hadoop/impl/v2/HadoopV2TaskContext.java | 1 +
.../hadoop/shuffle/HadoopShuffleJob.java | 7 --
.../shuffle/direct/HadoopDirectDataInput.java | 2 +-
.../hadoop/taskexecutor/HadoopRunnableTask.java | 12 ++-
.../impl/HadoopAbstractMapReduceTest.java | 2 +
.../impl/HadoopMapReduceEmbeddedSelfTest.java | 6 +-
12 files changed, 145 insertions(+), 95 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopTaskContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopTaskContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopTaskContext.java
index dddd017..d6e9394 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopTaskContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopTaskContext.java
@@ -207,4 +207,14 @@ public abstract class HadoopTaskContext {
* @throws IgniteCheckedException On any error in callable.
*/
public abstract <T> T runAsJobOwner(Callable<T> c) throws IgniteCheckedException;
+
+ /**
+ * Callback invoked from mapper thread when map is finished.
+ *
+ * @throws IgniteCheckedException If failed.
+ */
+ public void onMapperFinished() throws IgniteCheckedException {
+ if (output instanceof HadoopMapperAwareTaskOutput)
+ ((HadoopMapperAwareTaskOutput)output).onMapperFinished();
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1MapTask.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1MapTask.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1MapTask.java
index 65ff280..2aa4292 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1MapTask.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1MapTask.java
@@ -30,6 +30,7 @@ import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.processors.hadoop.HadoopFileBlock;
import org.apache.ignite.internal.processors.hadoop.HadoopInputSplit;
import org.apache.ignite.internal.processors.hadoop.HadoopJob;
+import org.apache.ignite.internal.processors.hadoop.HadoopMapperUtils;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskCancelledException;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskContext;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskInfo;
@@ -45,7 +46,7 @@ public class HadoopV1MapTask extends HadoopV1Task {
/**
* Constructor.
*
- * @param taskInfo
+ * @param taskInfo Taks info.
*/
public HadoopV1MapTask(HadoopTaskInfo taskInfo) {
super(taskInfo);
@@ -56,67 +57,79 @@ public class HadoopV1MapTask extends HadoopV1Task {
@Override public void run(HadoopTaskContext taskCtx) throws IgniteCheckedException {
HadoopJob job = taskCtx.job();
- HadoopV2TaskContext ctx = (HadoopV2TaskContext)taskCtx;
+ HadoopV2TaskContext taskCtx0 = (HadoopV2TaskContext)taskCtx;
- JobConf jobConf = ctx.jobConf();
+ if (taskCtx.taskInfo().hasMapperIndex())
+ HadoopMapperUtils.mapperIndex(taskCtx.taskInfo().mapperIndex());
+ else
+ HadoopMapperUtils.clearMapperIndex();
- InputFormat inFormat = jobConf.getInputFormat();
+ try {
+ JobConf jobConf = taskCtx0.jobConf();
- HadoopInputSplit split = info().inputSplit();
+ InputFormat inFormat = jobConf.getInputFormat();
- InputSplit nativeSplit;
+ HadoopInputSplit split = info().inputSplit();
- if (split instanceof HadoopFileBlock) {
- HadoopFileBlock block = (HadoopFileBlock)split;
+ InputSplit nativeSplit;
- nativeSplit = new FileSplit(new Path(block.file().toString()), block.start(), block.length(), EMPTY_HOSTS);
- }
- else
- nativeSplit = (InputSplit)ctx.getNativeSplit(split);
+ if (split instanceof HadoopFileBlock) {
+ HadoopFileBlock block = (HadoopFileBlock)split;
- assert nativeSplit != null;
+ nativeSplit = new FileSplit(new Path(block.file().toString()), block.start(), block.length(), EMPTY_HOSTS);
+ }
+ else
+ nativeSplit = (InputSplit)taskCtx0.getNativeSplit(split);
- Reporter reporter = new HadoopV1Reporter(taskCtx);
+ assert nativeSplit != null;
- HadoopV1OutputCollector collector = null;
+ Reporter reporter = new HadoopV1Reporter(taskCtx);
- try {
- collector = collector(jobConf, ctx, !job.info().hasCombiner() && !job.info().hasReducer(),
- fileName(), ctx.attemptId());
+ HadoopV1OutputCollector collector = null;
- RecordReader reader = inFormat.getRecordReader(nativeSplit, jobConf, reporter);
+ try {
+ collector = collector(jobConf, taskCtx0, !job.info().hasCombiner() && !job.info().hasReducer(),
+ fileName(), taskCtx0.attemptId());
- Mapper mapper = ReflectionUtils.newInstance(jobConf.getMapperClass(), jobConf);
+ RecordReader reader = inFormat.getRecordReader(nativeSplit, jobConf, reporter);
- Object key = reader.createKey();
- Object val = reader.createValue();
+ Mapper mapper = ReflectionUtils.newInstance(jobConf.getMapperClass(), jobConf);
- assert mapper != null;
+ Object key = reader.createKey();
+ Object val = reader.createValue();
+
+ assert mapper != null;
- try {
try {
- while (reader.next(key, val)) {
- if (isCancelled())
- throw new HadoopTaskCancelledException("Map task cancelled.");
+ try {
+ while (reader.next(key, val)) {
+ if (isCancelled())
+ throw new HadoopTaskCancelledException("Map task cancelled.");
+
+ mapper.map(key, val, collector, reporter);
+ }
- mapper.map(key, val, collector, reporter);
+ taskCtx.onMapperFinished();
+ }
+ finally {
+ mapper.close();
}
}
finally {
- mapper.close();
+ collector.closeWriter();
}
+
+ collector.commit();
}
- finally {
- collector.closeWriter();
- }
+ catch (Exception e) {
+ if (collector != null)
+ collector.abort();
- collector.commit();
+ throw new IgniteCheckedException(e);
+ }
}
- catch (Exception e) {
- if (collector != null)
- collector.abort();
-
- throw new IgniteCheckedException(e);
+ finally {
+ HadoopMapperUtils.clearMapperIndex();
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1ReduceTask.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1ReduceTask.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1ReduceTask.java
index 92c024e..5c1dd15 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1ReduceTask.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v1/HadoopV1ReduceTask.java
@@ -23,6 +23,7 @@ import org.apache.hadoop.mapred.Reporter;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.processors.hadoop.HadoopJob;
+import org.apache.ignite.internal.processors.hadoop.HadoopMapperUtils;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskCancelledException;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskContext;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskInfo;
@@ -53,49 +54,63 @@ public class HadoopV1ReduceTask extends HadoopV1Task {
@Override public void run(HadoopTaskContext taskCtx) throws IgniteCheckedException {
HadoopJob job = taskCtx.job();
- HadoopV2TaskContext ctx = (HadoopV2TaskContext)taskCtx;
+ HadoopV2TaskContext taskCtx0 = (HadoopV2TaskContext)taskCtx;
- JobConf jobConf = ctx.jobConf();
-
- HadoopTaskInput input = taskCtx.input();
-
- HadoopV1OutputCollector collector = null;
+ if (!reduce && taskCtx.taskInfo().hasMapperIndex())
+ HadoopMapperUtils.mapperIndex(taskCtx.taskInfo().mapperIndex());
+ else
+ HadoopMapperUtils.clearMapperIndex();
try {
- collector = collector(jobConf, ctx, reduce || !job.info().hasReducer(), fileName(), ctx.attemptId());
+ JobConf jobConf = taskCtx0.jobConf();
- Reducer reducer;
- if (reduce) reducer = ReflectionUtils.newInstance(jobConf.getReducerClass(),
- jobConf);
- else reducer = ReflectionUtils.newInstance(jobConf.getCombinerClass(),
- jobConf);
+ HadoopTaskInput input = taskCtx.input();
- assert reducer != null;
+ HadoopV1OutputCollector collector = null;
try {
+ collector = collector(jobConf, taskCtx0, reduce || !job.info().hasReducer(), fileName(), taskCtx0.attemptId());
+
+ Reducer reducer;
+ if (reduce) reducer = ReflectionUtils.newInstance(jobConf.getReducerClass(),
+ jobConf);
+ else reducer = ReflectionUtils.newInstance(jobConf.getCombinerClass(),
+ jobConf);
+
+ assert reducer != null;
+
try {
- while (input.next()) {
- if (isCancelled())
- throw new HadoopTaskCancelledException("Reduce task cancelled.");
+ try {
+ while (input.next()) {
+ if (isCancelled())
+ throw new HadoopTaskCancelledException("Reduce task cancelled.");
+
+ reducer.reduce(input.key(), input.values(), collector, Reporter.NULL);
+ }
- reducer.reduce(input.key(), input.values(), collector, Reporter.NULL);
+ if (!reduce)
+ taskCtx.onMapperFinished();
+ }
+ finally {
+ reducer.close();
}
}
finally {
- reducer.close();
+ collector.closeWriter();
}
+
+ collector.commit();
}
- finally {
- collector.closeWriter();
- }
+ catch (Exception e) {
+ if (collector != null)
+ collector.abort();
- collector.commit();
+ throw new IgniteCheckedException(e);
+ }
}
- catch (Exception e) {
- if (collector != null)
- collector.abort();
-
- throw new IgniteCheckedException(e);
+ finally {
+ if (!reduce)
+ HadoopMapperUtils.clearMapperIndex();
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2Context.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2Context.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2Context.java
index eec0636..1f4e675 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2Context.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2Context.java
@@ -154,16 +154,6 @@ public class HadoopV2Context extends JobContextImpl implements MapContext, Reduc
}
}
- /**
- * Callback invoked from mapper thread when map is finished.
- *
- * @throws IgniteCheckedException If failed.
- */
- public void onMapperFinished() throws IgniteCheckedException {
- if (output instanceof HadoopMapperAwareTaskOutput)
- ((HadoopMapperAwareTaskOutput)output).onMapperFinished();
- }
-
/** {@inheritDoc} */
@Override public OutputCommitter getOutputCommitter() {
throw new UnsupportedOperationException();
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2MapTask.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2MapTask.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2MapTask.java
index eb3b935..1519199 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2MapTask.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2MapTask.java
@@ -56,30 +56,32 @@ public class HadoopV2MapTask extends HadoopV2Task {
HadoopMapperUtils.clearMapperIndex();
try {
- InputSplit nativeSplit = hadoopContext().getInputSplit();
+ HadoopV2Context hadoopCtx = hadoopContext();
+
+ InputSplit nativeSplit = hadoopCtx.getInputSplit();
if (nativeSplit == null)
throw new IgniteCheckedException("Input split cannot be null.");
InputFormat inFormat = ReflectionUtils.newInstance(jobCtx.getInputFormatClass(),
- hadoopContext().getConfiguration());
+ hadoopCtx.getConfiguration());
- RecordReader reader = inFormat.createRecordReader(nativeSplit, hadoopContext());
+ RecordReader reader = inFormat.createRecordReader(nativeSplit, hadoopCtx);
- reader.initialize(nativeSplit, hadoopContext());
+ reader.initialize(nativeSplit, hadoopCtx);
- hadoopContext().reader(reader);
+ hadoopCtx.reader(reader);
HadoopJobInfo jobInfo = taskCtx.job().info();
outputFormat = jobInfo.hasCombiner() || jobInfo.hasReducer() ? null : prepareWriter(jobCtx);
- Mapper mapper = ReflectionUtils.newInstance(jobCtx.getMapperClass(), hadoopContext().getConfiguration());
+ Mapper mapper = ReflectionUtils.newInstance(jobCtx.getMapperClass(), hadoopCtx.getConfiguration());
try {
- mapper.run(new WrappedMapper().getMapContext(hadoopContext()));
+ mapper.run(new WrappedMapper().getMapContext(hadoopCtx));
- hadoopContext().onMapperFinished();
+ taskCtx.onMapperFinished();
}
finally {
closeWriter();
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2ReduceTask.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2ReduceTask.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2ReduceTask.java
index 930ec1d..09e0634 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2ReduceTask.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2ReduceTask.java
@@ -24,6 +24,7 @@ import org.apache.hadoop.mapreduce.lib.reduce.WrappedReducer;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.IgniteInterruptedCheckedException;
+import org.apache.ignite.internal.processors.hadoop.HadoopMapperUtils;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskInfo;
/**
@@ -53,10 +54,17 @@ public class HadoopV2ReduceTask extends HadoopV2Task {
JobContextImpl jobCtx = taskCtx.jobContext();
+ // Set mapper index for combiner tasks
+ if (!reduce && taskCtx.taskInfo().hasMapperIndex())
+ HadoopMapperUtils.mapperIndex(taskCtx.taskInfo().mapperIndex());
+ else
+ HadoopMapperUtils.clearMapperIndex();
+
try {
outputFormat = reduce || !taskCtx.job().info().hasReducer() ? prepareWriter(jobCtx) : null;
Reducer reducer;
+
if (reduce) reducer = ReflectionUtils.newInstance(jobCtx.getReducerClass(),
jobCtx.getConfiguration());
else reducer = ReflectionUtils.newInstance(jobCtx.getCombinerClass(),
@@ -64,6 +72,9 @@ public class HadoopV2ReduceTask extends HadoopV2Task {
try {
reducer.run(new WrappedReducer().getReducerContext(hadoopContext()));
+
+ if (!reduce)
+ taskCtx.onMapperFinished();
}
finally {
closeWriter();
@@ -84,6 +95,9 @@ public class HadoopV2ReduceTask extends HadoopV2Task {
throw new IgniteCheckedException(e);
}
finally {
+ if (!reduce)
+ HadoopMapperUtils.clearMapperIndex();
+
if (err != null)
abort(outputFormat);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
index d328550..475e43d 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
@@ -49,6 +49,7 @@ import org.apache.ignite.internal.processors.hadoop.HadoopInputSplit;
import org.apache.ignite.internal.processors.hadoop.HadoopJob;
import org.apache.ignite.internal.processors.hadoop.HadoopJobId;
import org.apache.ignite.internal.processors.hadoop.HadoopJobProperty;
+import org.apache.ignite.internal.processors.hadoop.HadoopMapperAwareTaskOutput;
import org.apache.ignite.internal.processors.hadoop.HadoopPartitioner;
import org.apache.ignite.internal.processors.hadoop.HadoopSerialization;
import org.apache.ignite.internal.processors.hadoop.HadoopSplitWrapper;
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
index 318ead3..4bcc398 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
@@ -182,13 +182,6 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
boolean stripeMappers0 = get(job.info(), SHUFFLE_MAPPER_STRIPED_OUTPUT, true);
if (stripeMappers0) {
- if (job.info().hasCombiner()) {
- log.info("Striped mapper output is disabled because it cannot be used together with combiner [jobId=" +
- job.id() + ']');
-
- stripeMappers0 = false;
- }
-
if (!embedded) {
log.info("Striped mapper output is disabled becuase it cannot be used in external mode [jobId=" +
job.id() + ']');
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataInput.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataInput.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataInput.java
index e3a713a..ef2905b 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataInput.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataInput.java
@@ -48,7 +48,7 @@ public class HadoopDirectDataInput extends InputStream implements DataInput {
/** {@inheritDoc} */
@Override public int read() throws IOException {
- return readByte();
+ return (int)readByte() & 0xFF;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
index a57efe6..339bf5b 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
@@ -122,7 +122,7 @@ public abstract class HadoopRunnableTask implements Callable<Void> {
/**
* Implements actual task running.
- * @throws IgniteCheckedException
+ * @throws IgniteCheckedException On error.
*/
void call0() throws IgniteCheckedException {
execStartTs = U.currentTimeMillis();
@@ -144,7 +144,15 @@ public abstract class HadoopRunnableTask implements Callable<Void> {
runTask(perfCntr);
if (info.type() == MAP && job.info().hasCombiner()) {
- ctx.taskInfo(new HadoopTaskInfo(COMBINE, info.jobId(), info.taskNumber(), info.attempt(), null));
+ // Switch to combiner.
+ HadoopTaskInfo combineTaskInfo = new HadoopTaskInfo(COMBINE, info.jobId(), info.taskNumber(),
+ info.attempt(), null);
+
+ // Mapper and combiner share the same index.
+ if (ctx.taskInfo().hasMapperIndex())
+ combineTaskInfo.mapperIndex(ctx.taskInfo().mapperIndex());
+
+ ctx.taskInfo(combineTaskInfo);
try {
runTask(perfCntr);
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopAbstractMapReduceTest.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopAbstractMapReduceTest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopAbstractMapReduceTest.java
index 89005f6..cd997a4 100644
--- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopAbstractMapReduceTest.java
+++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopAbstractMapReduceTest.java
@@ -172,6 +172,8 @@ public class HadoopAbstractMapReduceTest extends HadoopAbstractWordCountTest {
*/
protected final void doTest(IgfsPath inFile, boolean useNewMapper, boolean useNewCombiner, boolean useNewReducer)
throws Exception {
+ log.info("useNewMapper=" + useNewMapper + ", useNewCombiner=" + useNewCombiner + ", useNewReducer=" + useNewReducer);
+
igfs.delete(new IgfsPath(PATH_OUTPUT), true);
JobConf jobConf = new JobConf();
http://git-wip-us.apache.org/repos/asf/ignite/blob/476b089b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopMapReduceEmbeddedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopMapReduceEmbeddedSelfTest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopMapReduceEmbeddedSelfTest.java
index 8897a38..bce67f6 100644
--- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopMapReduceEmbeddedSelfTest.java
+++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopMapReduceEmbeddedSelfTest.java
@@ -55,14 +55,14 @@ public class HadoopMapReduceEmbeddedSelfTest extends HadoopMapReduceTest {
return cfg;
}
- /*
+ /**
* @throws Exception If fails.
*/
public void testMultiReducerWholeMapReduceExecution() throws Exception {
checkMultiReducerWholeMapReduceExecution(false);
}
- /*
+ /**
* @throws Exception If fails.
*/
public void testMultiReducerWholeMapReduceExecutionStriped() throws Exception {
@@ -100,6 +100,8 @@ public class HadoopMapReduceEmbeddedSelfTest extends HadoopMapReduceTest {
if (striped)
jobConf.set(HadoopJobProperty.SHUFFLE_MAPPER_STRIPED_OUTPUT.propertyName(), "true");
+ else
+ jobConf.set(HadoopJobProperty.SHUFFLE_MAPPER_STRIPED_OUTPUT.propertyName(), "false");
jobConf.set(CommonConfigurationKeys.IO_SERIALIZATIONS_KEY, CustomSerialization.class.getName());
[10/50] [abbrv] ignite git commit: Added cache.getAll benchmarks for
offheap cache.
Posted by vo...@apache.org.
Added cache.getAll benchmarks for offheap cache.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/074a4a08
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/074a4a08
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/074a4a08
Branch: refs/heads/ignite-1.9
Commit: 074a4a08012822f3404807015bc63052c20e7439
Parents: 660cd1e
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 11 17:54:55 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 11 17:54:55 2017 +0300
----------------------------------------------------------------------
.../ignite/yardstick/cache/IgniteGetBenchmark.java | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/074a4a08/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
index 918f571..9dd5058 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
@@ -29,9 +29,6 @@ import static org.yardstickframework.BenchmarkUtils.println;
* Ignite benchmark that performs get operations.
*/
public class IgniteGetBenchmark extends IgniteCacheAbstractBenchmark<Integer, Object> {
- /** */
- private static final String CACHE_NAME = "atomic";
-
/** {@inheritDoc} */
@Override public void setUp(BenchmarkConfiguration cfg) throws Exception {
super.setUp(cfg);
@@ -40,11 +37,13 @@ public class IgniteGetBenchmark extends IgniteCacheAbstractBenchmark<Integer, Ob
throw new IllegalArgumentException("Preloading amount (\"-pa\", \"--preloadAmount\") " +
"must by less then the range (\"-r\", \"--range\").");
- println(cfg, "Loading data...");
+ String cacheName = cache().getName();
+
+ println(cfg, "Loading data for cache: " + cacheName);
long start = System.nanoTime();
- try (IgniteDataStreamer<Object, Object> dataLdr = ignite().dataStreamer(CACHE_NAME)) {
+ try (IgniteDataStreamer<Object, Object> dataLdr = ignite().dataStreamer(cacheName)) {
for (int i = 0; i < args.preloadAmount(); i++) {
dataLdr.addData(i, new SampleValue(i));
@@ -71,6 +70,6 @@ public class IgniteGetBenchmark extends IgniteCacheAbstractBenchmark<Integer, Ob
/** {@inheritDoc} */
@Override protected IgniteCache<Integer, Object> cache() {
- return ignite().cache(CACHE_NAME);
+ return ignite().cache("atomic");
}
}
[26/50] [abbrv] ignite git commit: IGNITE-4036 - Fix. Near cache is
not expired together with corresponding server cache
Posted by vo...@apache.org.
IGNITE-4036 - Fix. Near cache is not expired together with corresponding server cache
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f5e601e2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f5e601e2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f5e601e2
Branch: refs/heads/ignite-1.9
Commit: f5e601e2973bfa81593241e55e4b6f97c0e55c3c
Parents: 6f6ff39
Author: dkarachentsev <dk...@gridgain.com>
Authored: Thu Jan 26 10:18:34 2017 +0300
Committer: dkarachentsev <dk...@gridgain.com>
Committed: Thu Jan 26 10:18:34 2017 +0300
----------------------------------------------------------------------
.../processors/cache/EntryGetResult.java | 40 +++++-
.../processors/cache/EntryGetWithTtlResult.java | 58 +++++++++
.../processors/cache/GridCacheAdapter.java | 69 +++++------
.../processors/cache/GridCacheContext.java | 122 +++++++++++++++----
.../processors/cache/GridCacheEntryEx.java | 2 +-
.../processors/cache/GridCacheMapEntry.java | 29 +++--
.../distributed/dht/GridDhtCacheAdapter.java | 4 +-
.../cache/distributed/dht/GridDhtGetFuture.java | 24 ++--
.../distributed/dht/GridDhtGetSingleFuture.java | 24 ++--
.../dht/GridPartitionedGetFuture.java | 19 ++-
.../dht/GridPartitionedSingleGetFuture.java | 7 +-
.../dht/atomic/GridDhtAtomicCache.java | 12 +-
.../dht/colocated/GridDhtColocatedCache.java | 15 ++-
.../distributed/near/GridNearGetFuture.java | 9 +-
.../cache/distributed/near/GridNearTxLocal.java | 8 +-
.../local/atomic/GridLocalAtomicCache.java | 13 +-
.../transactions/IgniteTxLocalAdapter.java | 62 ++++++----
.../processors/cache/GridCacheTestEntryEx.java | 2 +-
.../IgniteCacheExpiryPolicyAbstractTest.java | 44 ++++++-
19 files changed, 411 insertions(+), 152 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetResult.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetResult.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetResult.java
index a34ddae..9d06448 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetResult.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetResult.java
@@ -24,7 +24,7 @@ import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
*/
public class EntryGetResult {
/** */
- private final CacheObject val;
+ private Object val;
/** */
private final GridCacheVersion ver;
@@ -35,18 +35,34 @@ public class EntryGetResult {
/**
* @param val Value.
* @param ver Version.
+ * @param reserved Reserved flag.
*/
- EntryGetResult(CacheObject val, GridCacheVersion ver, boolean reserved) {
+ public EntryGetResult(Object val, GridCacheVersion ver, boolean reserved) {
this.val = val;
this.ver = ver;
this.reserved = reserved;
}
/**
+ * @param val Value.
+ * @param ver Version.
+ */
+ public EntryGetResult(Object val, GridCacheVersion ver) {
+ this(val, ver, false);
+ }
+
+ /**
* @return Value.
*/
- public CacheObject value() {
- return val;
+ public <T> T value() {
+ return (T)val;
+ }
+
+ /**
+ * @param val Value.
+ */
+ public void value(Object val) {
+ this.val = val;
}
/**
@@ -57,9 +73,23 @@ public class EntryGetResult {
}
/**
- * @return Reserved flag,
+ * @return Reserved flag.
*/
public boolean reserved() {
return reserved;
}
+
+ /**
+ * @return Entry expire time.
+ */
+ public long expireTime() {
+ return 0L;
+ }
+
+ /**
+ * @return Entry time to live.
+ */
+ public long ttl() {
+ return 0L;
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetWithTtlResult.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetWithTtlResult.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetWithTtlResult.java
new file mode 100644
index 0000000..fddf16e
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/EntryGetWithTtlResult.java
@@ -0,0 +1,58 @@
+/*
+ * 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;
+
+import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
+
+/**
+ *
+ */
+public class EntryGetWithTtlResult extends EntryGetResult {
+ /** */
+ private final long expireTime;
+
+ /** */
+ private final long ttl;
+
+ /**
+ * @param val Value.
+ * @param ver Version.
+ * @param reserved Reserved flag.
+ * @param expireTime Entry expire time.
+ * @param ttl Entry time to live.
+ */
+ public EntryGetWithTtlResult(Object val, GridCacheVersion ver, boolean reserved, long expireTime, long ttl) {
+ super(val, ver, reserved);
+ this.expireTime = expireTime;
+ this.ttl = ttl;
+ }
+
+ /**
+ * @return Entry expire time.
+ */
+ @Override public long expireTime() {
+ return expireTime;
+ }
+
+ /**
+ * @return Entry time to live.
+ */
+ @Override public long ttl() {
+ return ttl;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 dc8f030..11bf34b 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
@@ -1421,12 +1421,13 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
if (keepBinary)
key = (K)ctx.toCacheKeyObject(key);
- T2<V, GridCacheVersion> t = (T2<V, GridCacheVersion>)get(key, !keepBinary, true);
+ EntryGetResult t
+ = (EntryGetResult)get(key, !keepBinary, true);
CacheEntry<K, V> val = t != null ? new CacheEntryImplEx<>(
keepBinary ? (K)ctx.unwrapBinaryIfNeeded(key, true, false) : key,
- t.get1(),
- t.get2())
+ (V)t.value(),
+ t.version())
: null;
if (ctx.config().getInterceptor() != null) {
@@ -1434,7 +1435,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
V val0 = (V)ctx.config().getInterceptor().onGet(key, t != null ? val.getValue() : null);
- val = (val0 != null) ? new CacheEntryImplEx<>(key, val0, t != null ? t.get2() : null) : null;
+ val = (val0 != null) ? new CacheEntryImplEx<>(key, val0, t != null ? t.version() : null) : null;
}
if (statsEnabled)
@@ -1484,29 +1485,29 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
final K key0 = keepBinary ? (K)ctx.toCacheKeyObject(key) : key;
- IgniteInternalFuture<T2<V, GridCacheVersion>> fut =
- (IgniteInternalFuture<T2<V, GridCacheVersion>>)getAsync(key0, !keepBinary, true);
+ IgniteInternalFuture<EntryGetResult> fut =
+ (IgniteInternalFuture<EntryGetResult>)getAsync(key0, !keepBinary, true);
final boolean intercept = ctx.config().getInterceptor() != null;
IgniteInternalFuture<CacheEntry<K, V>> fr = fut.chain(
- new CX1<IgniteInternalFuture<T2<V, GridCacheVersion>>, CacheEntry<K, V>>() {
- @Override public CacheEntry<K, V> applyx(IgniteInternalFuture<T2<V, GridCacheVersion>> f)
+ new CX1<IgniteInternalFuture<EntryGetResult>, CacheEntry<K, V>>() {
+ @Override public CacheEntry<K, V> applyx(IgniteInternalFuture<EntryGetResult> f)
throws IgniteCheckedException {
- T2<V, GridCacheVersion> t = f.get();
+ EntryGetResult t = f.get();
K key = keepBinary ? (K)ctx.unwrapBinaryIfNeeded(key0, true, false) : key0;
CacheEntry val = t != null ? new CacheEntryImplEx<>(
key,
- t.get1(),
- t.get2())
+ t.value(),
+ t.version())
: null;
if (intercept) {
V val0 = (V)ctx.config().getInterceptor().onGet(key, t != null ? val.getValue() : null);
- return val0 != null ? new CacheEntryImplEx(key, val0, t != null ? t.get2() : null) : null;
+ return val0 != null ? new CacheEntryImplEx(key, val0, t != null ? t.version() : null) : null;
}
else
return val;
@@ -1514,7 +1515,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
});
if (statsEnabled)
- fut.listen(new UpdateGetTimeStatClosure<T2<V, GridCacheVersion>>(metrics0(), start));
+ fut.listen(new UpdateGetTimeStatClosure<EntryGetResult>(metrics0(), start));
return fr;
}
@@ -1547,15 +1548,15 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
long start = statsEnabled ? System.nanoTime() : 0L;
- Map<K, T2<V, GridCacheVersion>> map = (Map<K, T2<V, GridCacheVersion>>)getAll(keys, !ctx.keepBinary(), true);
+ Map<K, EntryGetResult> map = (Map<K, EntryGetResult>)getAll(keys, !ctx.keepBinary(), true);
Collection<CacheEntry<K, V>> res = new HashSet<>();
if (ctx.config().getInterceptor() != null)
res = interceptGetEntries(keys, map);
else
- for (Map.Entry<K, T2<V, GridCacheVersion>> e : map.entrySet())
- res.add(new CacheEntryImplEx<>(e.getKey(), e.getValue().get1(), e.getValue().get2()));
+ for (Map.Entry<K, EntryGetResult> e : map.entrySet())
+ res.add(new CacheEntryImplEx<>(e.getKey(), (V)e.getValue().value(), e.getValue().version()));
if (statsEnabled)
metrics0().addGetTimeNanos(System.nanoTime() - start);
@@ -1595,24 +1596,24 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
final long start = statsEnabled ? System.nanoTime() : 0L;
- IgniteInternalFuture<Map<K, T2<V, GridCacheVersion>>> fut =
- (IgniteInternalFuture<Map<K, T2<V, GridCacheVersion>>>)
+ IgniteInternalFuture<Map<K, EntryGetResult>> fut =
+ (IgniteInternalFuture<Map<K, EntryGetResult>>)
((IgniteInternalFuture)getAllAsync(keys, !ctx.keepBinary(), true));
final boolean intercept = ctx.config().getInterceptor() != null;
IgniteInternalFuture<Collection<CacheEntry<K, V>>> rf =
- fut.chain(new CX1<IgniteInternalFuture<Map<K, T2<V, GridCacheVersion>>>, Collection<CacheEntry<K, V>>>() {
+ fut.chain(new CX1<IgniteInternalFuture<Map<K, EntryGetResult>>, Collection<CacheEntry<K, V>>>() {
@Override public Collection<CacheEntry<K, V>> applyx(
- IgniteInternalFuture<Map<K, T2<V, GridCacheVersion>>> f) throws IgniteCheckedException {
+ IgniteInternalFuture<Map<K, EntryGetResult>> f) throws IgniteCheckedException {
if (intercept)
return interceptGetEntries(keys, f.get());
else {
Map<K, CacheEntry<K, V>> res = U.newHashMap(f.get().size());
- for (Map.Entry<K, T2<V, GridCacheVersion>> e : f.get().entrySet())
+ for (Map.Entry<K, EntryGetResult> e : f.get().entrySet())
res.put(e.getKey(),
- new CacheEntryImplEx<>(e.getKey(), e.getValue().get1(), e.getValue().get2()));
+ new CacheEntryImplEx<>(e.getKey(), (V)e.getValue().value(), e.getValue().version()));
return res.values();
}
@@ -1620,7 +1621,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
});
if (statsEnabled)
- fut.listen(new UpdateGetTimeStatClosure<Map<K, T2<V, GridCacheVersion>>>(metrics0(), start));
+ fut.listen(new UpdateGetTimeStatClosure<Map<K, EntryGetResult>>(metrics0(), start));
return rf;
}
@@ -1675,7 +1676,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
*/
@SuppressWarnings("IfMayBeConditional")
private Collection<CacheEntry<K, V>> interceptGetEntries(
- @Nullable Collection<? extends K> keys, Map<K, T2<V, GridCacheVersion>> map) {
+ @Nullable Collection<? extends K> keys, Map<K, EntryGetResult> map) {
Map<K, CacheEntry<K, V>> res;
if (F.isEmpty(keys)) {
@@ -1690,11 +1691,11 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
assert interceptor != null;
- for (Map.Entry<K, T2<V, GridCacheVersion>> e : map.entrySet()) {
- V val = interceptor.onGet(e.getKey(), e.getValue().get1());
+ for (Map.Entry<K, EntryGetResult> e : map.entrySet()) {
+ V val = interceptor.onGet(e.getKey(), (V)e.getValue().value());
if (val != null)
- res.put(e.getKey(), new CacheEntryImplEx<>(e.getKey(), val, e.getValue().get2()));
+ res.put(e.getKey(), new CacheEntryImplEx<>(e.getKey(), val, e.getValue().version()));
}
if (map.size() != keys.size()) { // Not all requested keys were in cache.
@@ -1976,12 +1977,12 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
if (res != null) {
ctx.addResult(map,
key,
- res.value(),
+ res,
skipVals,
keepCacheObjects,
deserializeBinary,
true,
- needVer ? res.version() : null);
+ needVer);
if (tx == null || (!tx.implicit() && tx.isolation() == READ_COMMITTED))
ctx.evicts().touch(entry, topVer);
@@ -2025,7 +2026,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
GridCacheEntryEx entry = entryEx(key);
try {
- T2<CacheObject, GridCacheVersion> verVal = entry.versionedValue(
+ EntryGetResult verVal = entry.versionedValue(
cacheVal,
res.version(),
null,
@@ -2035,19 +2036,19 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
if (log.isDebugEnabled())
log.debug("Set value loaded from store into entry [" +
"oldVer=" + res.version() +
- ", newVer=" + verVal.get2() + ", " +
+ ", newVer=" + verVal.version() + ", " +
"entry=" + entry + ']');
// Don't put key-value pair into result map if value is null.
- if (verVal.get1() != null) {
+ if (verVal.value() != null) {
ctx.addResult(map,
key,
- verVal.get1(),
+ verVal,
skipVals,
keepCacheObjects,
deserializeBinary,
true,
- needVer ? verVal.get2() : null);
+ needVer);
}
if (tx0 == null || (!tx0.implicit() &&
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 424e325..6322f9f 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
@@ -90,7 +90,6 @@ import org.apache.ignite.internal.util.offheap.unsafe.GridUnsafeMemory;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.typedef.C1;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.X;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.GPC;
@@ -1895,7 +1894,65 @@ public class GridCacheContext<K, V> implements Externalizable {
boolean keepCacheObjects,
boolean deserializeBinary,
boolean cpy,
- final GridCacheVersion ver) {
+ final GridCacheVersion ver,
+ final long expireTime,
+ final long ttl) {
+ // Creates EntryGetResult
+ addResult(map, key, val, skipVals, keepCacheObjects, deserializeBinary, cpy, null,
+ ver, expireTime, ttl, ver != null);
+ }
+
+ /**
+ * @param map Map.
+ * @param key Key.
+ * @param getRes EntryGetResult.
+ * @param skipVals Skip values.
+ * @param keepCacheObjects Keep CacheObject.
+ * @param deserializeBinary Deserialize binary flag.
+ * @param cpy Copy flag.
+ * @param needVer Need version flag.
+ */
+ @SuppressWarnings("unchecked")
+ public <K1, V1> void addResult(Map<K1, V1> map,
+ KeyCacheObject key,
+ EntryGetResult getRes,
+ boolean skipVals,
+ boolean keepCacheObjects,
+ boolean deserializeBinary,
+ boolean cpy,
+ boolean needVer) {
+ // Uses getRes as result.
+ addResult(map, key, getRes.<CacheObject>value(), skipVals, keepCacheObjects, deserializeBinary, cpy, getRes,
+ null, 0, 0, needVer);
+ }
+
+ /**
+ * @param map Map.
+ * @param key Key.
+ * @param val Value.
+ * @param skipVals Skip values.
+ * @param keepCacheObjects Keep CacheObject.
+ * @param deserializeBinary Deserialize binary.
+ * @param cpy Copy flag.
+ * @param getRes EntryGetResult.
+ * @param ver Version.
+ * @param expireTime Entry expire time.
+ * @param ttl Entry TTL.
+ * @param needVer Need version flag.
+ */
+ @SuppressWarnings("unchecked")
+ public <K1, V1> void addResult(Map<K1, V1> map,
+ KeyCacheObject key,
+ CacheObject val,
+ boolean skipVals,
+ boolean keepCacheObjects,
+ boolean deserializeBinary,
+ boolean cpy,
+ @Nullable EntryGetResult getRes,
+ final GridCacheVersion ver,
+ final long expireTime,
+ final long ttl,
+ boolean needVer) {
assert key != null;
assert val != null || skipVals;
@@ -1907,32 +1964,53 @@ public class GridCacheContext<K, V> implements Externalizable {
assert key0 != null : key;
assert val0 != null : val;
- map.put((K1)key0, ver != null ? (V1)new T2<>(val0, ver) : (V1)val0);
+ V1 v = createValue(ver, expireTime, ttl, val0, getRes, needVer);
+
+ map.put((K1)key0, v);
+ }
+ else {
+ Object val0 = skipVals ? true : val;
+
+ V1 v = createValue(ver, expireTime, ttl, val0, getRes, needVer);
+
+ map.put((K1)key, v);
}
- else
- map.put((K1)key,
- (V1)(ver != null ?
- (V1)new T2<>(skipVals ? true : val, ver) :
- skipVals ? true : val));
}
/**
- * @param map Map.
- * @param key Key.
+ * Creates new EntryGetResult or uses existing one.
+ *
+ * @param ver Version.
+ * @param expireTime Entry expire time.
+ * @param ttl Entry TTL.
* @param val Value.
- * @param skipVals Skip values flag.
- * @param keepCacheObjects Keep cache objects flag.
- * @param deserializeBinary Deserialize binary flag.
- * @param cpy Copy flag.
+ * @param getRes EntryGetResult
+ * @param needVer Need version flag.
+ * @return EntryGetResult or value.
*/
- public <K1, V1> void addResult(Map<K1, V1> map,
- KeyCacheObject key,
- CacheObject val,
- boolean skipVals,
- boolean keepCacheObjects,
- boolean deserializeBinary,
- boolean cpy) {
- addResult(map, key, val, skipVals, keepCacheObjects, deserializeBinary, cpy, null);
+ @SuppressWarnings("unchecked")
+ private <V1> V1 createValue(final GridCacheVersion ver,
+ final long expireTime,
+ final long ttl,
+ final Object val,
+ @Nullable final EntryGetResult getRes,
+ final boolean needVer) {
+ final V1 v;
+
+ if (!needVer)
+ v = (V1) val;
+ else if (getRes == null) {
+ v = expireTime != 0 || ttl != 0
+ ? (V1)new EntryGetWithTtlResult(val, ver, false, expireTime, ttl)
+ : (V1)new EntryGetResult(val, ver, false);
+ }
+ else {
+ getRes.value(val);
+
+ v = (V1)getRes;
+ }
+
+ return v;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index 3c42d53..ccd2285 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@ -761,7 +761,7 @@ public interface GridCacheEntryEx {
* @throws IgniteCheckedException If index could not be updated.
* @throws GridCacheEntryRemovedException If entry was removed.
*/
- public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ public EntryGetResult versionedValue(CacheObject val,
@Nullable GridCacheVersion curVer,
@Nullable GridCacheVersion newVer,
@Nullable ReaderArguments readerArgs,
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 7e26719..58b4ae3 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
@@ -69,7 +69,6 @@ import org.apache.ignite.internal.util.offheap.unsafe.GridUnsafeMemory;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.T3;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -975,7 +974,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
assert !deferred;
// If return value is consistent, then done.
- res = retVer ? new EntryGetResult(ret, resVer, false) : ret;
+ res = retVer ? entryGetResult(ret, resVer, false) : ret;
}
else if (reserveForLoad && !obsolete) {
assert !readThrough;
@@ -986,7 +985,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
if (reserve)
flags |= IS_EVICT_DISABLED;
- res = new EntryGetResult(null, resVer, reserve);
+ res = entryGetResult(null, resVer, reserve);
}
}
@@ -1092,6 +1091,20 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
return ret;
}
+ /**
+ * Creates EntryGetResult or EntryGetWithTtlResult if expire time information exists.
+ *
+ * @param val Value.
+ * @param ver Version.
+ * @param reserve Reserve flag.
+ * @return EntryGetResult.
+ */
+ private EntryGetResult entryGetResult(CacheObject val, GridCacheVersion ver, boolean reserve) {
+ return extras == null || extras.expireTime() == 0
+ ? new EntryGetResult(val, ver, reserve)
+ : new EntryGetWithTtlResult(val, ver, reserve, rawExpireTime(), rawTtl());
+ }
+
/** {@inheritDoc} */
@SuppressWarnings({"unchecked", "TooBroadScope"})
@Nullable @Override public final CacheObject innerReload()
@@ -3382,7 +3395,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
}
/**
- * TODO: GG-4009: do we need to generate event and invalidate value?
+ * TODO: IGNITE-3500: do we need to generate event and invalidate value?
*
* @return {@code true} if expired.
* @throws IgniteCheckedException In case of failure.
@@ -3621,7 +3634,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
}
/** {@inheritDoc} */
- @Override public synchronized T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ @Override public synchronized EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
@Nullable ReaderArguments readerArgs,
@@ -3637,7 +3650,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
GridCacheMvcc mvcc = mvccExtras();
if (mvcc != null && !mvcc.isEmpty())
- return new T2<>(this.val, ver);
+ return entryGetResult(this.val, ver, false);
if (newVer == null)
newVer = cctx.versions().next();
@@ -3671,13 +3684,13 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
// Version does not change for load ops.
update(val, expTime, ttl, newVer, true);
- return new T2<>(val, newVer);
+ return entryGetResult(val, newVer, false);
}
assert !evictionDisabled() : this;
}
- return new T2<>(this.val, ver);
+ return entryGetResult(this.val, ver, false);
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
index bc34df7..dcd379a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
@@ -41,6 +41,7 @@ import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.CacheObject;
import org.apache.ignite.internal.processors.cache.CacheOperationContext;
import org.apache.ignite.internal.processors.cache.CachePeekModes;
+import org.apache.ignite.internal.processors.cache.EntryGetResult;
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
import org.apache.ignite.internal.processors.cache.GridCacheClearAllRunnable;
import org.apache.ignite.internal.processors.cache.GridCacheConcurrentMap;
@@ -74,7 +75,6 @@ import org.apache.ignite.internal.util.typedef.CI1;
import org.apache.ignite.internal.util.typedef.CI2;
import org.apache.ignite.internal.util.typedef.CI3;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -648,7 +648,7 @@ public abstract class GridDhtCacheAdapter<K, V> extends GridDistributedCacheAdap
* @param canRemap Can remap flag.
* @return Get future.
*/
- IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> getDhtAllAsync(
+ IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> getDhtAllAsync(
Collection<KeyCacheObject> keys,
@Nullable final ReaderArguments readerArgs,
boolean readThrough,
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
index 3bf4489..8b92e9f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
@@ -31,6 +31,7 @@ import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.CacheObject;
+import org.apache.ignite.internal.processors.cache.EntryGetResult;
import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheEntryInfo;
import org.apache.ignite.internal.processors.cache.GridCacheEntryRemovedException;
@@ -46,7 +47,6 @@ import org.apache.ignite.internal.util.lang.GridClosureException;
import org.apache.ignite.internal.util.typedef.C2;
import org.apache.ignite.internal.util.typedef.CI1;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteUuid;
@@ -390,7 +390,7 @@ public final class GridDhtGetFuture<K, V> extends GridCompoundIdentityFuture<Col
txFut.markInitialized();
}
- IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> fut;
+ IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> fut;
if (txFut == null || txFut.isDone()) {
fut = cache().getDhtAllAsync(
@@ -411,8 +411,8 @@ public final class GridDhtGetFuture<K, V> extends GridCompoundIdentityFuture<Col
// transactions to complete.
fut = new GridEmbeddedFuture<>(
txFut,
- new C2<Boolean, Exception, IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>>>() {
- @Override public IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> apply(Boolean b, Exception e) {
+ new C2<Boolean, Exception, IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>>>() {
+ @Override public IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> apply(Boolean b, Exception e) {
if (e != null)
throw new GridClosureException(e);
@@ -438,9 +438,9 @@ public final class GridDhtGetFuture<K, V> extends GridCompoundIdentityFuture<Col
}
return new GridEmbeddedFuture<>(
- new C2<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>, Exception, Collection<GridCacheEntryInfo>>() {
+ new C2<Map<KeyCacheObject, EntryGetResult>, Exception, Collection<GridCacheEntryInfo>>() {
@Override public Collection<GridCacheEntryInfo> apply(
- Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>> map, Exception e
+ Map<KeyCacheObject, EntryGetResult> map, Exception e
) {
if (e != null) {
onDone(e);
@@ -458,14 +458,14 @@ public final class GridDhtGetFuture<K, V> extends GridCompoundIdentityFuture<Col
* @param map Map to convert.
* @return List of infos.
*/
- private Collection<GridCacheEntryInfo> toEntryInfos(Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>> map) {
+ private Collection<GridCacheEntryInfo> toEntryInfos(Map<KeyCacheObject, EntryGetResult> map) {
if (map.isEmpty())
return Collections.emptyList();
Collection<GridCacheEntryInfo> infos = new ArrayList<>(map.size());
- for (Map.Entry<KeyCacheObject, T2<CacheObject, GridCacheVersion>> entry : map.entrySet()) {
- T2<CacheObject, GridCacheVersion> val = entry.getValue();
+ for (Map.Entry<KeyCacheObject, EntryGetResult> entry : map.entrySet()) {
+ EntryGetResult val = entry.getValue();
assert val != null;
@@ -473,8 +473,10 @@ public final class GridDhtGetFuture<K, V> extends GridCompoundIdentityFuture<Col
info.cacheId(cctx.cacheId());
info.key(entry.getKey());
- info.value(skipVals ? null : val.get1());
- info.version(val.get2());
+ info.value(skipVals ? null : (CacheObject)val.value());
+ info.version(val.version());
+ info.expireTime(val.expireTime());
+ info.ttl(val.ttl());
infos.add(info);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java
index 49bebd6..f3a27bf 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java
@@ -30,6 +30,7 @@ import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.NodeStoppingException;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.CacheObject;
+import org.apache.ignite.internal.processors.cache.EntryGetResult;
import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheEntryInfo;
import org.apache.ignite.internal.processors.cache.GridCacheEntryRemovedException;
@@ -39,7 +40,6 @@ import org.apache.ignite.internal.processors.cache.ReaderArguments;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.lang.IgniteUuid;
@@ -348,7 +348,7 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
}
}
- IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> fut;
+ IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> fut;
if (rdrFut == null || rdrFut.isDone()) {
fut = cache().getDhtAllAsync(
@@ -375,7 +375,7 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
return;
}
- IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> fut0 =
+ IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> fut0 =
cache().getDhtAllAsync(
Collections.singleton(key),
args,
@@ -403,11 +403,11 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
/**
* @return Listener for get future.
*/
- @NotNull private IgniteInClosure<IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>>>
+ @NotNull private IgniteInClosure<IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>>>
createGetFutureListener() {
- return new IgniteInClosure<IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>>>() {
+ return new IgniteInClosure<IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>>>() {
@Override public void apply(
- IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> fut
+ IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> fut
) {
onResult(fut);
}
@@ -417,7 +417,7 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
/**
* @param fut Completed future to finish this process with.
*/
- private void onResult(IgniteInternalFuture<Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>>> fut) {
+ private void onResult(IgniteInternalFuture<Map<KeyCacheObject, EntryGetResult>> fut) {
assert fut.isDone();
if (fut.error() != null)
@@ -436,11 +436,11 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
* @param map Map to convert.
* @return List of infos.
*/
- private GridCacheEntryInfo toEntryInfo(Map<KeyCacheObject, T2<CacheObject, GridCacheVersion>> map) {
+ private GridCacheEntryInfo toEntryInfo(Map<KeyCacheObject, EntryGetResult> map) {
if (map.isEmpty())
return null;
- T2<CacheObject, GridCacheVersion> val = map.get(key);
+ EntryGetResult val = map.get(key);
assert val != null;
@@ -448,8 +448,10 @@ public final class GridDhtGetSingleFuture<K, V> extends GridFutureAdapter<GridCa
info.cacheId(cctx.cacheId());
info.key(key);
- info.value(skipVals ? null : val.get1());
- info.version(val.get2());
+ info.value(skipVals ? null : (CacheObject)val.value());
+ info.version(val.version());
+ info.expireTime(val.expireTime());
+ info.ttl(val.ttl());
return info;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
index 5892b37..c41711c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
@@ -447,11 +447,12 @@ public class GridPartitionedGetFuture<K, V> extends CacheDistributedGetFutureAda
if (entry != null) {
boolean isNew = entry.isNewLocked();
+ EntryGetResult getRes = null;
CacheObject v = null;
GridCacheVersion ver = null;
if (needVer) {
- EntryGetResult res = entry.innerGetVersioned(
+ getRes = entry.innerGetVersioned(
null,
null,
/*swap*/true,
@@ -465,9 +466,9 @@ public class GridPartitionedGetFuture<K, V> extends CacheDistributedGetFutureAda
!deserializeBinary,
null);
- if (res != null) {
- v = res.value();
- ver = res.version();
+ if (getRes != null) {
+ v = getRes.value();
+ ver = getRes.version();
}
}
else {
@@ -501,7 +502,11 @@ public class GridPartitionedGetFuture<K, V> extends CacheDistributedGetFutureAda
keepCacheObjects,
deserializeBinary,
true,
- ver);
+ getRes,
+ ver,
+ 0,
+ 0,
+ needVer);
return true;
}
@@ -560,7 +565,9 @@ public class GridPartitionedGetFuture<K, V> extends CacheDistributedGetFutureAda
keepCacheObjects,
deserializeBinary,
false,
- needVer ? info.version() : null);
+ needVer ? info.version() : null,
+ 0,
+ 0);
}
return map;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
index 7c14f35..2b5624b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
@@ -51,7 +51,6 @@ import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.CI1;
import org.apache.ignite.internal.util.typedef.CIX1;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteProductVersion;
@@ -615,7 +614,7 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im
if (needVer) {
assert ver != null || !res;
- onDone(new T2<>(res, ver));
+ onDone(new EntryGetResult(res, ver));
}
else
onDone(res);
@@ -633,10 +632,10 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im
if (!keepCacheObjects) {
Object res = cctx.unwrapBinaryIfNeeded(val, !deserializeBinary);
- onDone(needVer ? new T2<>(res, ver) : res);
+ onDone(needVer ? new EntryGetResult(res, ver) : res);
}
else
- onDone(needVer ? new T2<>(val, ver) : val);
+ onDone(needVer ? new EntryGetResult(val, ver) : val);
}
else
onDone(null);
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 2f97bcc..72e1bb1 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
@@ -1491,11 +1491,12 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
if (entry != null) {
boolean isNew = entry.isNewLocked();
+ EntryGetResult getRes = null;
CacheObject v = null;
GridCacheVersion ver = null;
if (needVer) {
- EntryGetResult res = entry.innerGetVersioned(
+ getRes = entry.innerGetVersioned(
null,
null,
/*swap*/true,
@@ -1509,9 +1510,9 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
true,
null);
- if (res != null) {
- v = res.value();
- ver = res.version();
+ if (getRes != null) {
+ v = getRes.value();
+ ver = getRes.version();
}
}
else {
@@ -1539,7 +1540,8 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
success = false;
}
else
- ctx.addResult(locVals, key, v, skipVals, false, deserializeBinary, true, ver);
+ ctx.addResult(locVals, key, v, skipVals, false, deserializeBinary, true,
+ getRes, ver, 0, 0, needVer);
}
else
success = false;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
index 5ed30db..ccdc51d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
@@ -481,11 +481,12 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
if (entry != null) {
boolean isNew = entry.isNewLocked();
+ EntryGetResult getRes = null;
CacheObject v = null;
GridCacheVersion ver = null;
if (needVer) {
- EntryGetResult res = entry.innerGetVersioned(
+ getRes = entry.innerGetVersioned(
null,
null,
/*swap*/true,
@@ -499,9 +500,9 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
!deserializeBinary,
null);
- if (res != null) {
- v = res.value();
- ver = res.version();
+ if (getRes != null) {
+ v = getRes.value();
+ ver = getRes.version();
}
}
else {
@@ -540,7 +541,11 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
keepCacheObj,
deserializeBinary,
true,
- ver);
+ getRes,
+ ver,
+ 0,
+ 0,
+ needVer);
}
}
else
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 8c64e3e..cb47498 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
@@ -56,7 +56,6 @@ import org.apache.ignite.internal.util.typedef.CI1;
import org.apache.ignite.internal.util.typedef.CIX1;
import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.P1;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -665,7 +664,7 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
if (keepCacheObjects) {
K key0 = (K)key;
V val0 = needVer ?
- (V)new T2<>(skipVals ? true : v, ver) :
+ (V)new EntryGetResult(skipVals ? true : v, ver) :
(V)(skipVals ? true : v);
add(new GridFinishedFuture<>(Collections.singletonMap(key0, val0)));
@@ -673,7 +672,7 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
else {
K key0 = (K)cctx.unwrapBinaryIfNeeded(key, !deserializeBinary, false);
V val0 = needVer ?
- (V)new T2<>(!skipVals ?
+ (V)new EntryGetResult(!skipVals ?
(V)cctx.unwrapBinaryIfNeeded(v, !deserializeBinary, false) :
(V)Boolean.TRUE, ver) :
!skipVals ?
@@ -759,7 +758,9 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
keepCacheObjects,
deserializeBinary,
false,
- needVer ? info.version() : null);
+ needVer ? info.version() : null,
+ 0,
+ 0);
}
catch (GridCacheEntryRemovedException ignore) {
if (log.isDebugEnabled())
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index 67518ef..ae9edcd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -32,6 +32,7 @@ import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
import org.apache.ignite.internal.processors.cache.GridCacheEntryRemovedException;
+import org.apache.ignite.internal.processors.cache.EntryGetResult;
import org.apache.ignite.internal.processors.cache.GridCacheMvccCandidate;
import org.apache.ignite.internal.processors.cache.GridCacheMvccFuture;
import org.apache.ignite.internal.processors.cache.GridCacheReturn;
@@ -60,7 +61,6 @@ import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.typedef.C1;
import org.apache.ignite.internal.util.typedef.CI1;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -476,10 +476,10 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
GridCacheVersion ver;
if (needVer) {
- T2<Object, GridCacheVersion> t = (T2)val;
+ EntryGetResult getRes = (EntryGetResult)val;
- v = t.get1();
- ver = t.get2();
+ v = getRes.value();
+ ver = getRes.version();
}
else {
v = val;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
index ee4f7a6..7da11b6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
@@ -513,7 +513,6 @@ public class GridLocalAtomicCache<K, V> extends GridLocalCache<K, V> {
if (entry != null) {
CacheObject v;
- GridCacheVersion ver;
if (needVer) {
EntryGetResult res = entry.innerGetVersioned(
@@ -531,18 +530,15 @@ public class GridLocalAtomicCache<K, V> extends GridLocalCache<K, V> {
null);
if (res != null) {
- v = res.value();
- ver = res.version();
-
ctx.addResult(
vals,
cacheKey,
- v,
+ res,
skipVals,
false,
deserializeBinary,
true,
- ver);
+ needVer);
}
else
success = false;
@@ -569,7 +565,10 @@ public class GridLocalAtomicCache<K, V> extends GridLocalCache<K, V> {
skipVals,
false,
deserializeBinary,
- true);
+ true,
+ null,
+ 0,
+ 0);
}
else
success = false;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/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 a1c1123..777489e 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
@@ -481,7 +481,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
GridCacheEntryEx entry = cacheCtx.cache().entryEx(key);
try {
- T2<CacheObject, GridCacheVersion> verVal = entry.versionedValue(cacheVal,
+ EntryGetResult verVal = entry.versionedValue(cacheVal,
ver,
null,
null,
@@ -490,11 +490,11 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
if (log.isDebugEnabled()) {
log.debug("Set value loaded from store into entry [" +
"oldVer=" + ver +
- ", newVer=" + verVal.get2() +
+ ", newVer=" + verVal.version() +
", entry=" + entry + ']');
}
- ver = verVal.get2();
+ ver = verVal.version();
break;
}
@@ -1212,7 +1212,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
assert ver != null;
}
- cacheCtx.addResult(map, key, val, skipVals, keepCacheObjects, deserializeBinary, false, ver);
+ cacheCtx.addResult(map, key, val, skipVals, keepCacheObjects, deserializeBinary, false,
+ ver, 0, 0);
}
}
else {
@@ -1221,6 +1222,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
while (true) {
try {
GridCacheVersion readVer = null;
+ EntryGetResult getRes = null;
Object transformClo =
(txEntry.op() == TRANSFORM &&
@@ -1228,7 +1230,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
F.first(txEntry.entryProcessors()) : null;
if (needVer) {
- EntryGetResult res = txEntry.cached().innerGetVersioned(
+ getRes = txEntry.cached().innerGetVersioned(
null,
this,
/*swap*/true,
@@ -1242,9 +1244,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
txEntry.keepBinary(),
null);
- if (res != null) {
- val = res.value();
- readVer = res.version();
+ if (getRes != null) {
+ val = getRes.value();
+ readVer = getRes.version();
}
}
else {
@@ -1277,7 +1279,11 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
keepCacheObjects,
deserializeBinary,
false,
- readVer);
+ getRes,
+ readVer,
+ 0,
+ 0,
+ needVer);
}
else
missed.put(key, txEntry.cached().version());
@@ -1306,13 +1312,14 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
CacheObject val = null;
GridCacheVersion readVer = null;
+ EntryGetResult getRes = null;
if (!pessimistic() || readCommitted() && !skipVals) {
IgniteCacheExpiryPolicy accessPlc =
optimistic() ? accessPolicy(cacheCtx, txKey, expiryPlc) : null;
if (needReadVer) {
- EntryGetResult res = primaryLocal(entry) ?
+ getRes = primaryLocal(entry) ?
entry.innerGetVersioned(
null,
this,
@@ -1327,9 +1334,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
!deserializeBinary,
null) : null;
- if (res != null) {
- val = res.value();
- readVer = res.version();
+ if (getRes != null) {
+ val = getRes.value();
+ readVer = getRes.version();
}
}
else {
@@ -1356,7 +1363,11 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
keepCacheObjects,
deserializeBinary,
false,
- needVer ? readVer : null);
+ getRes,
+ readVer,
+ 0,
+ 0,
+ needVer);
}
else
missed.put(key, ver);
@@ -1534,7 +1545,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
keepCacheObjects,
deserializeBinary,
false,
- needVer ? loadVer : null);
+ needVer ? loadVer : null,
+ 0,
+ 0);
}
}
else {
@@ -1556,7 +1569,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
keepCacheObjects,
deserializeBinary,
false,
- needVer ? loadVer : null);
+ needVer ? loadVer : null,
+ 0,
+ 0);
}
}
}
@@ -1663,6 +1678,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
CacheObject val = null;
GridCacheVersion readVer = null;
+ EntryGetResult getRes = null;
try {
Object transformClo =
@@ -1671,7 +1687,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
F.first(txEntry.entryProcessors()) : null;
if (needVer) {
- EntryGetResult res = cached.innerGetVersioned(
+ getRes = cached.innerGetVersioned(
null,
IgniteTxLocalAdapter.this,
/*swap*/cacheCtx.isSwapOrOffheapEnabled(),
@@ -1685,9 +1701,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
txEntry.keepBinary(),
null);
- if (res != null) {
- val = res.value();
- readVer = res.version();
+ if (getRes != null) {
+ val = getRes.value();
+ readVer = getRes.version();
}
}
else{
@@ -1722,7 +1738,11 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
keepCacheObjects,
deserializeBinary,
false,
- readVer);
+ getRes,
+ readVer,
+ 0,
+ 0,
+ needVer);
if (readVer != null)
txEntry.entryReadVersion(readVer);
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index 2954bdb..d46dee0 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@ -686,7 +686,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
}
/** @inheritDoc */
- @Override public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ @Override public EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
@Nullable ReaderArguments readerArgs,
http://git-wip-us.apache.org/repos/asf/ignite/blob/f5e601e2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java
index f22ca6d..b234631 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java
@@ -36,12 +36,14 @@ import javax.cache.expiry.ExpiryPolicy;
import javax.cache.expiry.ModifiedExpiryPolicy;
import javax.cache.processor.EntryProcessor;
import javax.cache.processor.MutableEntry;
+import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.cache.CacheMemoryMode;
import org.apache.ignite.cache.CachePeekMode;
import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.NearCacheConfiguration;
import org.apache.ignite.internal.IgniteInterruptedCheckedException;
import org.apache.ignite.internal.IgniteKernal;
@@ -54,6 +56,7 @@ import org.apache.ignite.internal.util.lang.GridAbsPredicate;
import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.PAX;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.testframework.GridTestUtils;
import org.apache.ignite.transactions.Transaction;
import org.apache.ignite.transactions.TransactionConcurrency;
@@ -1015,6 +1018,45 @@ public abstract class IgniteCacheExpiryPolicyAbstractTest extends IgniteCacheAbs
}
/**
+ * Put entry to server node and check how its expires in client NearCache.
+ *
+ * @throws Exception If failed.
+ */
+ public void testNearExpiresOnClient() throws Exception {
+ if(cacheMode() != PARTITIONED)
+ return;
+
+ factory = CreatedExpiryPolicy.factoryOf(new Duration(TimeUnit.SECONDS,1));
+
+ nearCache = true;
+
+ startGrids();
+
+ IgniteConfiguration clientCfg = getConfiguration("client").setClientMode(true);
+
+ ((TcpDiscoverySpi)clientCfg.getDiscoverySpi()).setForceServerMode(false);
+
+ Ignite client = startGrid("client", clientCfg);
+
+ IgniteCache<Object, Object> cache = client.cache(null);
+
+ Integer key = 1;
+
+ // Put on server node.
+ jcache(0).put(key, 1);
+
+ // Make entry cached in client NearCache.
+ assertEquals(1, cache.get(key));
+
+ assertEquals(1, cache.localPeek(key, CachePeekMode.NEAR));
+
+ waitExpired(key);
+
+ // Check client NearCache.
+ assertNull(cache.localPeek(key, CachePeekMode.NEAR));
+ }
+
+ /**
* @return Test keys.
* @throws Exception If failed.
*/
@@ -1270,4 +1312,4 @@ public abstract class IgniteCacheExpiryPolicyAbstractTest extends IgniteCacheAbs
return S.toString(TestPolicy.class, this);
}
}
-}
\ No newline at end of file
+}
[24/50] [abbrv] ignite git commit: IGNITE-1596 Fixed version sort.
Posted by vo...@apache.org.
IGNITE-1596 Fixed version sort.
(cherry picked from commit 128ba07)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6f6ff397
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6f6ff397
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6f6ff397
Branch: refs/heads/ignite-1.9
Commit: 6f6ff397c8a2fb3f1041958a3338294cb44af998
Parents: ccc0f41
Author: Andrey Novikov <an...@gridgain.com>
Authored: Wed Jan 25 16:48:05 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Jan 25 16:49:42 2017 +0700
----------------------------------------------------------------------
modules/web-console/backend/app/agent.js | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6f6ff397/modules/web-console/backend/app/agent.js
----------------------------------------------------------------------
diff --git a/modules/web-console/backend/app/agent.js b/modules/web-console/backend/app/agent.js
index 791ea50..961253f 100644
--- a/modules/web-console/backend/app/agent.js
+++ b/modules/web-console/backend/app/agent.js
@@ -650,14 +650,14 @@ module.exports.factory = function(_, fs, path, JSZip, socketio, settings, mongo)
const bParts = b.split('.');
for (let i = 0; i < aParts.length; ++i) {
- if (bParts.length === i)
- return 1;
+ if (aParts[i] !== bParts[i])
+ return aParts[i] < bParts[i] ? 1 : -1;
+ }
- if (aParts[i] === aParts[i])
- continue;
+ if (aParts.length === bParts.length)
+ return 0;
- return aParts[i] > bParts[i] ? 1 : -1;
- }
+ return aParts.length < bParts.length ? 1 : -1;
}));
// Latest version of agent distribution.
[21/50] [abbrv] ignite git commit: IGNITE-4598: Hadoop: implemented
raw comparator for BytesWritable key type. This closes #1457.
Posted by vo...@apache.org.
IGNITE-4598: Hadoop: implemented raw comparator for BytesWritable key type. This closes #1457.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3db0971d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3db0971d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3db0971d
Branch: refs/heads/ignite-1.9
Commit: 3db0971d7d32798aeb3ce5dd8c0b3246a895fe91
Parents: 7f0af43
Author: devozerov <vo...@gridgain.com>
Authored: Tue Jan 24 16:45:59 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Tue Jan 24 16:54:21 2017 +0300
----------------------------------------------------------------------
.../io/BytesWritablePartiallyRawComparator.java | 51 +++++++++++++++
.../hadoop/io/TextPartiallyRawComparator.java | 68 +-------------------
.../processors/hadoop/impl/HadoopUtils.java | 66 +++++++++++++++++++
.../hadoop/impl/v2/HadoopV2TaskContext.java | 13 +++-
4 files changed, 129 insertions(+), 69 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3db0971d/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/BytesWritablePartiallyRawComparator.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/BytesWritablePartiallyRawComparator.java b/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/BytesWritablePartiallyRawComparator.java
new file mode 100644
index 0000000..da9240b
--- /dev/null
+++ b/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/BytesWritablePartiallyRawComparator.java
@@ -0,0 +1,51 @@
+/*
+ * 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.hadoop.io;
+
+import org.apache.hadoop.io.BytesWritable;
+import org.apache.ignite.internal.processors.hadoop.impl.HadoopUtils;
+import org.apache.ignite.internal.processors.hadoop.io.OffheapRawMemory;
+import org.apache.ignite.internal.processors.hadoop.io.PartiallyOffheapRawComparatorEx;
+
+/**
+ * Partial raw comparator for {@link BytesWritable} data type.
+ * <p>
+ * Implementation is borrowed from {@code org.apache.hadoop.io.FastByteComparisons} and adopted to Ignite
+ * infrastructure.
+ */
+public class BytesWritablePartiallyRawComparator implements PartiallyRawComparator<BytesWritable>,
+ PartiallyOffheapRawComparatorEx<BytesWritable> {
+ /** Length bytes. */
+ private static final int LEN_BYTES = 4;
+
+ /** {@inheritDoc} */
+ @Override public int compare(BytesWritable val1, RawMemory val2Buf) {
+ if (val2Buf instanceof OffheapRawMemory) {
+ OffheapRawMemory val2Buf0 = (OffheapRawMemory)val2Buf;
+
+ return compare(val1, val2Buf0.pointer(), val2Buf0.length());
+ }
+ else
+ throw new UnsupportedOperationException("Text can be compared only with offheap memory.");
+ }
+
+ /** {@inheritDoc} */
+ @Override public int compare(BytesWritable val1, long val2Ptr, int val2Len) {
+ return HadoopUtils.compareBytes(val1.getBytes(), val1.getLength(), val2Ptr + LEN_BYTES, val2Len - LEN_BYTES);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3db0971d/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/TextPartiallyRawComparator.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/TextPartiallyRawComparator.java b/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/TextPartiallyRawComparator.java
index a2bc3d4..e82f5e4 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/TextPartiallyRawComparator.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/hadoop/io/TextPartiallyRawComparator.java
@@ -17,10 +17,9 @@
package org.apache.ignite.hadoop.io;
-import com.google.common.primitives.Longs;
-import com.google.common.primitives.UnsignedBytes;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.WritableUtils;
+import org.apache.ignite.internal.processors.hadoop.impl.HadoopUtils;
import org.apache.ignite.internal.processors.hadoop.io.OffheapRawMemory;
import org.apache.ignite.internal.processors.hadoop.io.PartiallyOffheapRawComparatorEx;
import org.apache.ignite.internal.util.GridUnsafe;
@@ -47,69 +46,6 @@ public class TextPartiallyRawComparator implements PartiallyRawComparator<Text>,
@Override public int compare(Text val1, long val2Ptr, int val2Len) {
int len2 = WritableUtils.decodeVIntSize(GridUnsafe.getByte(val2Ptr));
- return compareBytes(val1.getBytes(), val1.getLength(), val2Ptr + len2, val2Len - len2);
- }
-
- /**
- * Internal comparison routine.
- *
- * @param buf1 Bytes 1.
- * @param len1 Length 1.
- * @param ptr2 Pointer 2.
- * @param len2 Length 2.
- * @return Result.
- */
- @SuppressWarnings("SuspiciousNameCombination")
- private static int compareBytes(byte[] buf1, int len1, long ptr2, int len2) {
- int minLength = Math.min(len1, len2);
-
- int minWords = minLength / Longs.BYTES;
-
- for (int i = 0; i < minWords * Longs.BYTES; i += Longs.BYTES) {
- long lw = GridUnsafe.getLong(buf1, GridUnsafe.BYTE_ARR_OFF + i);
- long rw = GridUnsafe.getLong(ptr2 + i);
-
- long diff = lw ^ rw;
-
- if (diff != 0) {
- if (GridUnsafe.BIG_ENDIAN)
- return (lw + Long.MIN_VALUE) < (rw + Long.MIN_VALUE) ? -1 : 1;
-
- // Use binary search
- int n = 0;
- int y;
- int x = (int) diff;
-
- if (x == 0) {
- x = (int) (diff >>> 32);
-
- n = 32;
- }
-
- y = x << 16;
-
- if (y == 0)
- n += 16;
- else
- x = y;
-
- y = x << 8;
-
- if (y == 0)
- n += 8;
-
- return (int) (((lw >>> n) & 0xFFL) - ((rw >>> n) & 0xFFL));
- }
- }
-
- // The epilogue to cover the last (minLength % 8) elements.
- for (int i = minWords * Longs.BYTES; i < minLength; i++) {
- int res = UnsignedBytes.compare(buf1[i], GridUnsafe.getByte(ptr2 + i));
-
- if (res != 0)
- return res;
- }
-
- return len1 - len2;
+ return HadoopUtils.compareBytes(val1.getBytes(), val1.getLength(), val2Ptr + len2, val2Len - len2);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/3db0971d/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopUtils.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopUtils.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopUtils.java
index a34388d..767e10a 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopUtils.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopUtils.java
@@ -17,6 +17,8 @@
package org.apache.ignite.internal.processors.hadoop.impl;
+import com.google.common.primitives.Longs;
+import com.google.common.primitives.UnsignedBytes;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.Writable;
@@ -32,6 +34,7 @@ import org.apache.ignite.internal.processors.hadoop.HadoopJobId;
import org.apache.ignite.internal.processors.hadoop.HadoopJobStatus;
import org.apache.ignite.internal.processors.hadoop.HadoopSplitWrapper;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskInfo;
+import org.apache.ignite.internal.util.GridUnsafe;
import org.apache.ignite.internal.util.typedef.internal.U;
import java.io.ByteArrayInputStream;
@@ -328,4 +331,67 @@ public class HadoopUtils {
HadoopCommonUtils.restoreContextClassLoader(oldLdr);
}
}
+
+ /**
+ * Internal comparison routine.
+ *
+ * @param buf1 Bytes 1.
+ * @param len1 Length 1.
+ * @param ptr2 Pointer 2.
+ * @param len2 Length 2.
+ * @return Result.
+ */
+ @SuppressWarnings("SuspiciousNameCombination")
+ public static int compareBytes(byte[] buf1, int len1, long ptr2, int len2) {
+ int minLength = Math.min(len1, len2);
+
+ int minWords = minLength / Longs.BYTES;
+
+ for (int i = 0; i < minWords * Longs.BYTES; i += Longs.BYTES) {
+ long lw = GridUnsafe.getLong(buf1, GridUnsafe.BYTE_ARR_OFF + i);
+ long rw = GridUnsafe.getLong(ptr2 + i);
+
+ long diff = lw ^ rw;
+
+ if (diff != 0) {
+ if (GridUnsafe.BIG_ENDIAN)
+ return (lw + Long.MIN_VALUE) < (rw + Long.MIN_VALUE) ? -1 : 1;
+
+ // Use binary search
+ int n = 0;
+ int y;
+ int x = (int) diff;
+
+ if (x == 0) {
+ x = (int) (diff >>> 32);
+
+ n = 32;
+ }
+
+ y = x << 16;
+
+ if (y == 0)
+ n += 16;
+ else
+ x = y;
+
+ y = x << 8;
+
+ if (y == 0)
+ n += 8;
+
+ return (int) (((lw >>> n) & 0xFFL) - ((rw >>> n) & 0xFFL));
+ }
+ }
+
+ // The epilogue to cover the last (minLength % 8) elements.
+ for (int i = minWords * Longs.BYTES; i < minLength; i++) {
+ int res = UnsignedBytes.compare(buf1[i], GridUnsafe.getByte(ptr2 + i));
+
+ if (res != 0)
+ return res;
+ }
+
+ return len1 - len2;
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/3db0971d/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
index 475e43d..b14dc47 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
@@ -22,6 +22,7 @@ import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.LocalFileSystem;
import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.io.ByteWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.Writable;
import org.apache.hadoop.io.serializer.Deserializer;
@@ -40,6 +41,7 @@ import org.apache.hadoop.mapreduce.TaskType;
import org.apache.hadoop.security.UserGroupInformation;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.hadoop.io.BytesWritablePartiallyRawComparator;
import org.apache.ignite.hadoop.io.PartiallyRawComparator;
import org.apache.ignite.hadoop.io.TextPartiallyRawComparator;
import org.apache.ignite.internal.processors.hadoop.HadoopClassLoader;
@@ -49,7 +51,6 @@ import org.apache.ignite.internal.processors.hadoop.HadoopInputSplit;
import org.apache.ignite.internal.processors.hadoop.HadoopJob;
import org.apache.ignite.internal.processors.hadoop.HadoopJobId;
import org.apache.ignite.internal.processors.hadoop.HadoopJobProperty;
-import org.apache.ignite.internal.processors.hadoop.HadoopMapperAwareTaskOutput;
import org.apache.ignite.internal.processors.hadoop.HadoopPartitioner;
import org.apache.ignite.internal.processors.hadoop.HadoopSerialization;
import org.apache.ignite.internal.processors.hadoop.HadoopSplitWrapper;
@@ -156,6 +157,7 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
COMBINE_KEY_GROUPING_SUPPORTED = ok;
+ PARTIAL_COMPARATORS.put(ByteWritable.class.getName(), BytesWritablePartiallyRawComparator.class.getName());
PARTIAL_COMPARATORS.put(Text.class.getName(), TextPartiallyRawComparator.class.getName());
}
@@ -602,11 +604,16 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
if (clsName == null) {
Class keyCls = conf.getMapOutputKeyClass();
- if (keyCls != null) {
+ while (keyCls != null) {
clsName = PARTIAL_COMPARATORS.get(keyCls.getName());
- if (clsName != null)
+ if (clsName != null) {
conf.set(HadoopJobProperty.JOB_PARTIALLY_RAW_COMPARATOR.propertyName(), clsName);
+
+ break;
+ }
+
+ keyCls = keyCls.getSuperclass();
}
}
}
[45/50] [abbrv] ignite git commit: IGNITE-4688: Changed copyrights to
2017.
Posted by vo...@apache.org.
IGNITE-4688: Changed copyrights to 2017.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1fe33bc7
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1fe33bc7
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1fe33bc7
Branch: refs/heads/ignite-1.9
Commit: 1fe33bc7b6e1dc966aed43533d32d4ce9c18795c
Parents: 7f27040
Author: devozerov <vo...@gridgain.com>
Authored: Mon Feb 13 13:04:37 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Mon Feb 13 13:04:37 2017 +0300
----------------------------------------------------------------------
.../main/java/org/apache/ignite/internal/IgniteVersionUtils.java | 2 +-
.../org/apache/ignite/startup/GridRandomCommandLineLoader.java | 2 +-
.../dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs | 2 +-
.../dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec | 2 +-
.../dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs | 2 +-
.../dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec | 2 +-
.../platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec | 2 +-
.../platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs | 2 +-
.../platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec | 2 +-
.../dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec | 2 +-
.../dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs | 2 +-
.../platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec | 2 +-
.../platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs | 2 +-
.../web-console/frontend/app/modules/branding/branding.provider.js | 2 +-
15 files changed, 15 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/core/src/main/java/org/apache/ignite/internal/IgniteVersionUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteVersionUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteVersionUtils.java
index bd8726f..7cb15be 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteVersionUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteVersionUtils.java
@@ -47,7 +47,7 @@ public class IgniteVersionUtils {
public static final String ACK_VER_STR;
/** Copyright blurb. */
- public static final String COPYRIGHT = "2016 Copyright(C) Apache Software Foundation";
+ public static final String COPYRIGHT = "2017 Copyright(C) Apache Software Foundation";
/**
* Static initializer.
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/core/src/test/java/org/apache/ignite/startup/GridRandomCommandLineLoader.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/startup/GridRandomCommandLineLoader.java b/modules/core/src/test/java/org/apache/ignite/startup/GridRandomCommandLineLoader.java
index 13c38ef..73a9760 100644
--- a/modules/core/src/test/java/org/apache/ignite/startup/GridRandomCommandLineLoader.java
+++ b/modules/core/src/test/java/org/apache/ignite/startup/GridRandomCommandLineLoader.java
@@ -61,7 +61,7 @@ public final class GridRandomCommandLineLoader {
private static final String IGNITE_PROG_NAME = "IGNITE_PROG_NAME";
/** Copyright text. Ant processed. */
- private static final String COPYRIGHT = "2016 Copyright(C) Apache Software Foundation.";
+ private static final String COPYRIGHT = "2017 Copyright(C) Apache Software Foundation.";
/** Version. Ant processed. */
private static final String VER = "x.x.x";
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
index d6cb3df..97ab3ef 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
@@ -27,7 +27,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec b/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
index 2324faa..236584e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
@@ -48,7 +48,7 @@ More info: https://apacheignite-net.readme.io/
Apache Ignite ASP.NET Integration
</summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>OutputCacheProvider Apache Ignite In-Memory Distributed Computing SQL NoSQL Grid Map Reduce Cache</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
index 9bd5c47..ad1d5ab 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
@@ -25,7 +25,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
index ad0e915..6349dd9 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec b/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec
index 367bdd5..8c7731b 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec
@@ -43,7 +43,7 @@ XSD file describes the structure of IgniteConfigurationSection and enables Intel
More info on Apache Ignite.NET: https://apacheignite-net.readme.io/
</description>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite XSD Intellisense</tags>
</metadata>
<files>
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec b/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
index bb6227e..2c4dfc1 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
@@ -48,7 +48,7 @@ More info: https://apacheignite-net.readme.io/
High-performance in-memory platform for computing and transacting on large-scale data sets in real-time.
</summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL Grid Map Reduce Cache linqpad-samples</tags>
</metadata>
<files>
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/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 240f273..f8512f1 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -25,7 +25,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec b/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
index 088ca13..93aa8c2 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
@@ -50,7 +50,7 @@ More info: https://apacheignite-net.readme.io/
LINQ Provider for Apache Ignite
</summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL LINQ Grid Map Reduce Cache linqpad-samples</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec
index fa5c39a..a3f86c1 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Apache.Ignite.Log4Net.nuspec
@@ -40,7 +40,7 @@ Creating NuGet package:
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>log4net Logger for Apache Ignite</description>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL LINQ Grid Map Reduce Cache log4net logger</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
index 824252e..262a7cd 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
@@ -24,7 +24,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec b/modules/platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec
index 765e26f..e3a6f42 100644
--- a/modules/platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.NLog/Apache.Ignite.NLog.nuspec
@@ -40,7 +40,7 @@ Creating NuGet package:
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>NLog Logger for Apache Ignite</description>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL LINQ Grid Map Reduce Cache NLog logger</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
index f28278c..f952d7d 100644
--- a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
@@ -24,7 +24,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2016")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/1fe33bc7/modules/web-console/frontend/app/modules/branding/branding.provider.js
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/app/modules/branding/branding.provider.js b/modules/web-console/frontend/app/modules/branding/branding.provider.js
index ce14b34..0545ff3 100644
--- a/modules/web-console/frontend/app/modules/branding/branding.provider.js
+++ b/modules/web-console/frontend/app/modules/branding/branding.provider.js
@@ -26,7 +26,7 @@ export default ['IgniteBranding', [function() {
let footerHtml = [
'<p>Apache Ignite Web Console</p>',
- '<p>� 2016 The Apache Software Foundation.</p>',
+ '<p>� 2017 The Apache Software Foundation.</p>',
'<p>Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are trademarks of The Apache Software Foundation.</p>'
];
[08/50] [abbrv] ignite git commit: Improved cache.get benchmarks.
Posted by vo...@apache.org.
Improved cache.get benchmarks.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/07752ec8
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/07752ec8
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/07752ec8
Branch: refs/heads/ignite-1.9
Commit: 07752ec85dc3bf18297b728f9a31185d44ad3687
Parents: b6005b0
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 11 13:51:23 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 11 14:20:21 2017 +0300
----------------------------------------------------------------------
.../yardstick/cache/IgniteGetAllBenchmark.java | 42 ++++++++++++++++++++
.../yardstick/cache/IgniteGetBenchmark.java | 38 +++++++++++++++++-
2 files changed, 79 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/07752ec8/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllBenchmark.java
new file mode 100644
index 0000000..2f76b7c
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllBenchmark.java
@@ -0,0 +1,42 @@
+/*
+ * 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.yardstick.cache;
+
+import java.util.Map;
+import java.util.Set;
+import org.apache.ignite.internal.util.typedef.internal.U;
+
+/**
+ * Ignite benchmark that performs getAll operations.
+ */
+public class IgniteGetAllBenchmark extends IgniteGetBenchmark {
+ /** {@inheritDoc} */
+ @Override public boolean test(Map<Object, Object> ctx) throws Exception {
+ Set<Integer> keys = U.newHashSet(args.batch());
+
+ while (keys.size() < args.batch()) {
+ int key = nextRandom(args.range());
+
+ keys.add(key);
+ }
+
+ cache.getAll(keys);
+
+ return true;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/07752ec8/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
index 8a86e2f..918f571 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetBenchmark.java
@@ -19,11 +19,47 @@ package org.apache.ignite.yardstick.cache;
import java.util.Map;
import org.apache.ignite.IgniteCache;
+import org.apache.ignite.IgniteDataStreamer;
+import org.apache.ignite.yardstick.cache.model.SampleValue;
+import org.yardstickframework.BenchmarkConfiguration;
+
+import static org.yardstickframework.BenchmarkUtils.println;
/**
* Ignite benchmark that performs get operations.
*/
public class IgniteGetBenchmark extends IgniteCacheAbstractBenchmark<Integer, Object> {
+ /** */
+ private static final String CACHE_NAME = "atomic";
+
+ /** {@inheritDoc} */
+ @Override public void setUp(BenchmarkConfiguration cfg) throws Exception {
+ super.setUp(cfg);
+
+ if (args.preloadAmount() > args.range())
+ throw new IllegalArgumentException("Preloading amount (\"-pa\", \"--preloadAmount\") " +
+ "must by less then the range (\"-r\", \"--range\").");
+
+ println(cfg, "Loading data...");
+
+ long start = System.nanoTime();
+
+ try (IgniteDataStreamer<Object, Object> dataLdr = ignite().dataStreamer(CACHE_NAME)) {
+ for (int i = 0; i < args.preloadAmount(); i++) {
+ dataLdr.addData(i, new SampleValue(i));
+
+ if (i % 100000 == 0) {
+ if (Thread.currentThread().isInterrupted())
+ break;
+
+ println("Loaded entries: " + i);
+ }
+ }
+ }
+
+ println(cfg, "Finished populating query data in " + ((System.nanoTime() - start) / 1_000_000) + " ms.");
+ }
+
/** {@inheritDoc} */
@Override public boolean test(Map<Object, Object> ctx) throws Exception {
int key = nextRandom(args.range());
@@ -35,6 +71,6 @@ public class IgniteGetBenchmark extends IgniteCacheAbstractBenchmark<Integer, Ob
/** {@inheritDoc} */
@Override protected IgniteCache<Integer, Object> cache() {
- return ignite().cache("atomic");
+ return ignite().cache(CACHE_NAME);
}
}
[25/50] [abbrv] ignite git commit: Added benchmark
IgnitePutOffHeapIndexedValue8Benchmark.
Posted by vo...@apache.org.
Added benchmark IgnitePutOffHeapIndexedValue8Benchmark.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9d9e61fc
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9d9e61fc
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9d9e61fc
Branch: refs/heads/ignite-1.9
Commit: 9d9e61fc9db0f79daaa87b7ec2c89c652bd3beaa
Parents: 3db0971
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 25 14:37:57 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 25 14:37:57 2017 +0300
----------------------------------------------------------------------
modules/yardstick/config/ignite-base-config.xml | 25 ++++++++++++++++
.../IgnitePutOffHeapIndexedValue8Benchmark.java | 30 ++++++++++++++++++++
2 files changed, 55 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/9d9e61fc/modules/yardstick/config/ignite-base-config.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/config/ignite-base-config.xml b/modules/yardstick/config/ignite-base-config.xml
index 615cb42..e363674 100644
--- a/modules/yardstick/config/ignite-base-config.xml
+++ b/modules/yardstick/config/ignite-base-config.xml
@@ -127,6 +127,31 @@
</bean>
<bean class="org.apache.ignite.configuration.CacheConfiguration">
+ <property name="name" value="atomic-index-offheap"/>
+
+ <property name="cacheMode" value="PARTITIONED"/>
+
+ <property name="atomicityMode" value="ATOMIC"/>
+
+ <property name="swapEnabled" value="false"/>
+
+ <property name="memoryMode" value="OFFHEAP_TIERED"/>
+
+ <property name="indexedTypes">
+ <list>
+ <value>java.lang.Integer</value>
+ <value>org.apache.ignite.yardstick.cache.model.Person1</value>
+
+ <value>java.lang.Integer</value>
+ <value>org.apache.ignite.yardstick.cache.model.Person2</value>
+
+ <value>java.lang.Integer</value>
+ <value>org.apache.ignite.yardstick.cache.model.Person8</value>
+ </list>
+ </property>
+ </bean>
+
+ <bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="atomic-index-with-eviction"/>
<property name="evictionPolicy">
http://git-wip-us.apache.org/repos/asf/ignite/blob/9d9e61fc/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutOffHeapIndexedValue8Benchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutOffHeapIndexedValue8Benchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutOffHeapIndexedValue8Benchmark.java
new file mode 100644
index 0000000..85202cd
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutOffHeapIndexedValue8Benchmark.java
@@ -0,0 +1,30 @@
+/*
+ * 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.yardstick.cache;
+
+import org.apache.ignite.IgniteCache;
+
+/**
+ * Ignite benchmark that performs put operations for entity with indexed fields.
+ */
+public class IgnitePutOffHeapIndexedValue8Benchmark extends IgnitePutIndexedValue8Benchmark {
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("atomic-index-offheap");
+ }
+}
[35/50] [abbrv] ignite git commit: IGNITE-4621 Hang on broadcast when
BinaryUtils.FIELDS_SORTED_ORDER == true
Posted by vo...@apache.org.
IGNITE-4621 Hang on broadcast when BinaryUtils.FIELDS_SORTED_ORDER == true
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d22bcf6c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d22bcf6c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d22bcf6c
Branch: refs/heads/ignite-1.9
Commit: d22bcf6c72db5122b62e80f7719b22de67190e6a
Parents: 83ad094
Author: Anton Vinogradov <av...@apache.org>
Authored: Mon Jan 30 17:18:03 2017 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Thu Feb 2 13:06:16 2017 +0300
----------------------------------------------------------------------
.../java/org/apache/ignite/internal/binary/BinaryContext.java | 3 +++
.../java/org/apache/ignite/internal/binary/BinaryTreeMap.java | 6 +++++-
2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/d22bcf6c/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
index 4030ef0..7b21dfb 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
@@ -190,6 +190,9 @@ public class BinaryContext {
sysClss.add(GridClosureProcessor.C4V2.class.getName());
sysClss.add(GridClosureProcessor.C4MLAV2.class.getName());
+ // BinaryUtils.FIELDS_SORTED_ORDER support, since it uses TreeMap at BinaryMetadata.
+ sysClss.add(BinaryTreeMap.class.getName());
+
if (BinaryUtils.wrapTrees()) {
sysClss.add(TreeMap.class.getName());
sysClss.add(TreeSet.class.getName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/d22bcf6c/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
index 6a7cf9b..3dae8ce 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryTreeMap.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.binary;
+import java.io.Serializable;
import org.apache.ignite.binary.BinaryObjectException;
import org.apache.ignite.binary.BinaryRawReader;
import org.apache.ignite.binary.BinaryRawWriter;
@@ -32,7 +33,10 @@ import java.util.TreeMap;
/**
* Binary {@link TreeMap} wrapper.
*/
-public class BinaryTreeMap implements Binarylizable {
+public class BinaryTreeMap implements Binarylizable, Serializable {
+ /** */
+ private static final long serialVersionUID = 0L;
+
/** Original map. */
private TreeMap map;
[09/50] [abbrv] ignite git commit: Added cache.getAll benchmarks for
offheap cache.
Posted by vo...@apache.org.
Added cache.getAll benchmarks for offheap cache.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/660cd1e0
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/660cd1e0
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/660cd1e0
Branch: refs/heads/ignite-1.9
Commit: 660cd1e072496c323f5bdfc797f2a7cb7d74480d
Parents: 07752ec
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 11 17:34:46 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 11 17:34:46 2017 +0300
----------------------------------------------------------------------
.../cache/IgniteGetAllOffHeapBenchmark.java | 30 ++++++++++++++++++++
1 file changed, 30 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/660cd1e0/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllOffHeapBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllOffHeapBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllOffHeapBenchmark.java
new file mode 100644
index 0000000..face4bd
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgniteGetAllOffHeapBenchmark.java
@@ -0,0 +1,30 @@
+/*
+ * 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.yardstick.cache;
+
+import org.apache.ignite.IgniteCache;
+
+/**
+ *
+ */
+public class IgniteGetAllOffHeapBenchmark extends IgniteGetAllBenchmark {
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("atomic-offheap");
+ }
+}
[42/50] [abbrv] ignite git commit: IGNITE-4590 Fixed Lock/unlock
operations are hanging when topology changed
Posted by vo...@apache.org.
IGNITE-4590 Fixed Lock/unlock operations are hanging when topology changed
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4bf7fdf4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4bf7fdf4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4bf7fdf4
Branch: refs/heads/ignite-1.9
Commit: 4bf7fdf40e50aa6aca8fb438fb314c35166802df
Parents: ad91eac
Author: nikolay tikhonov <nt...@gridgain.com>
Authored: Tue Feb 7 16:18:56 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Feb 7 16:26:18 2017 +0300
----------------------------------------------------------------------
.../transactions/IgniteTxLocalAdapter.java | 3 +
.../processors/cache/GridCacheTestEntryEx.java | 102 +++++++++----------
.../CacheLockReleaseNodeLeaveTest.java | 65 +++++++++++-
3 files changed, 118 insertions(+), 52 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/4bf7fdf4/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 777489e..1a9b082 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
@@ -3785,6 +3785,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
// so it is safe to get acquired locks.
GridCacheMvccCandidate explicitCand = entry.localOwner();
+ if (explicitCand == null)
+ explicitCand = cctx.mvcc().explicitLock(threadId(), entry.txKey());
+
if (explicitCand != null) {
GridCacheVersion explicitVer = explicitCand.version();
http://git-wip-us.apache.org/repos/asf/ignite/blob/4bf7fdf4/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index d46dee0..8f0d9b1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@ -280,7 +280,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return true;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public KeyCacheObject key() {
return key;
}
@@ -290,7 +290,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return new IgniteTxKey(key, 0);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject rawGet() {
return val;
}
@@ -305,7 +305,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return val != null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject rawPut(CacheObject val, long ttl) {
CacheObject old = this.val;
@@ -315,14 +315,14 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return old;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public Cache.Entry wrap() {
assert false;
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public Cache.Entry wrapLazyValue(boolean keepBinary) {
assert false;
@@ -336,19 +336,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Nullable @Override public CacheObject peekVisibleValue() {
assert false;
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheVersion obsoleteVersion() {
return obsoleteVer;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean obsolete() {
return obsoleteVer != null;
}
@@ -358,7 +358,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return obsoleteVer != null && !obsoleteVer.equals(exclude);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean invalidate(@Nullable GridCacheVersion curVer, GridCacheVersion newVer)
throws IgniteCheckedException {
assert false;
@@ -366,7 +366,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean invalidate(@Nullable CacheEntryPredicate[] filter)
throws GridCacheEntryRemovedException, IgniteCheckedException {
assert false;
@@ -374,7 +374,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean evictInternal(boolean swap, GridCacheVersion obsoleteVer,
@Nullable CacheEntryPredicate[] filter) {
assert false;
@@ -390,7 +390,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean isNew() {
assert false; return false;
}
@@ -400,7 +400,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
assert false; return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject innerGet(
@Nullable GridCacheVersion ver,
@Nullable IgniteInternalTx tx,
@@ -417,12 +417,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return val;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public void clearReserveForLoad(GridCacheVersion ver) {
assert false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public EntryGetResult innerGetAndReserveForLoad(
boolean readSwap,
boolean updateMetrics,
@@ -437,7 +437,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Nullable @Override public EntryGetResult innerGetVersioned(
@Nullable GridCacheVersion ver,
IgniteInternalTx tx,
@@ -456,12 +456,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject innerReload() {
return val;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheUpdateTxResult innerSet(@Nullable IgniteInternalTx tx,
UUID evtNodeId,
UUID affNodeId,
@@ -544,7 +544,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheUpdateTxResult innerRemove(
@Nullable IgniteInternalTx tx,
UUID evtNodeId,
@@ -573,7 +573,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return new GridCacheUpdateTxResult(true, old);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean clear(GridCacheVersion ver, boolean readers) throws IgniteCheckedException {
if (ver == null || ver.equals(this.ver)) {
val = null;
@@ -584,7 +584,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean tmLock(IgniteInternalTx tx,
long timeout,
@Nullable GridCacheVersion serOrder,
@@ -594,12 +594,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public void txUnlock(IgniteInternalTx tx) {
assert false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean removeLock(GridCacheVersion ver) {
GridCacheMvccCandidate doomed = mvcc.candidate(ver);
@@ -608,7 +608,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return doomed != null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean markObsolete(GridCacheVersion ver) {
if (ver == null || ver.equals(obsoleteVer)) {
obsoleteVer = ver;
@@ -645,19 +645,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheVersion version() {
return ver;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean checkSerializableReadVersion(GridCacheVersion ver) {
assert false;
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean initialValue(
CacheObject val,
GridCacheVersion ver,
@@ -673,19 +673,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean initialValue(KeyCacheObject key, GridCacheSwapEntry unswapped) {
assert false;
return false;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheVersionedEntryEx versionedEntry(final boolean keepBinary) throws IgniteCheckedException {
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
@@ -696,22 +696,22 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean hasLockCandidate(GridCacheVersion ver) {
return mvcc.hasCandidate(ver);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByAny(GridCacheVersion... exclude) {
return !mvcc.isEmpty(exclude);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByThread() {
return lockedByThread(Thread.currentThread().getId());
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedLocally(GridCacheVersion lockVer) {
return mvcc.isLocallyOwned(lockVer);
}
@@ -722,52 +722,52 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return lockedLocally(lockVer) || lockedByThread(threadId);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByThread(long threadId, GridCacheVersion exclude) {
return mvcc.isLocallyOwnedByThread(threadId, false, exclude);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByThread(long threadId) {
return mvcc.isLocallyOwnedByThread(threadId, true);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedBy(GridCacheVersion ver) {
return mvcc.isOwnedBy(ver);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByThreadUnsafe(long threadId) {
return mvcc.isLocallyOwnedByThread(threadId, true);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedByUnsafe(GridCacheVersion ver) {
return mvcc.isOwnedBy(ver);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean lockedLocallyUnsafe(GridCacheVersion lockVer) {
return mvcc.isLocallyOwned(lockVer);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public boolean hasLockCandidateUnsafe(GridCacheVersion ver) {
return mvcc.hasCandidate(ver);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public Collection<GridCacheMvccCandidate> localCandidates(GridCacheVersion... exclude) {
return mvcc.localCandidates(exclude);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
Collection<GridCacheMvccCandidate> localCandidates(boolean reentries, GridCacheVersion... exclude) {
return mvcc.localCandidates(reentries, exclude);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public Collection<GridCacheMvccCandidate> remoteMvccSnapshot(GridCacheVersion... exclude) {
return mvcc.remoteCandidates(exclude);
}
@@ -777,7 +777,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return mvcc.localCandidate(threadId);
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheMvccCandidate candidate(GridCacheVersion ver) {
return mvcc.candidate(ver);
}
@@ -795,19 +795,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return mvcc.anyOwner();
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public GridCacheMvccCandidate localOwner() {
return mvcc.localOwner();
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject valueBytes() {
assert false;
return null;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public CacheObject valueBytes(GridCacheVersion ver) {
assert false;
@@ -819,7 +819,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return 0;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public long expireTime() {
return 0;
}
@@ -839,12 +839,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return ttl;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public long ttl() {
return ttl;
}
- /** @inheritDoc */
+ /** {@inheritDoc} */
@Override public void updateTtl(GridCacheVersion ver, long ttl) {
throw new UnsupportedOperationException();
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/4bf7fdf4/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 e84fd3f..687fe0b 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
@@ -17,9 +17,13 @@
package org.apache.ignite.internal.processors.cache.distributed;
+import java.util.ArrayDeque;
+import java.util.Queue;
import java.util.concurrent.Callable;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.Lock;
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.internal.IgniteInternalFuture;
@@ -33,6 +37,7 @@ 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.cache.CacheMode.REPLICATED;
import static org.apache.ignite.transactions.TransactionConcurrency.PESSIMISTIC;
import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_READ;
@@ -43,6 +48,9 @@ public class CacheLockReleaseNodeLeaveTest extends GridCommonAbstractTest {
/** */
private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+ /** */
+ private static final String REPLICATED_TEST_CACHE = "REPLICATED_TEST_CACHE";
+
/** {@inheritDoc} */
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(gridName);
@@ -53,7 +61,12 @@ public class CacheLockReleaseNodeLeaveTest extends GridCommonAbstractTest {
ccfg.setAtomicityMode(TRANSACTIONAL);
- cfg.setCacheConfiguration(ccfg);
+ CacheConfiguration ccfg1 = new CacheConfiguration(REPLICATED_TEST_CACHE)
+ .setCacheMode(REPLICATED)
+ .setAtomicityMode(TRANSACTIONAL)
+ .setReadFromBackup(false);
+
+ cfg.setCacheConfiguration(ccfg, ccfg1);
return cfg;
}
@@ -114,6 +127,56 @@ public class CacheLockReleaseNodeLeaveTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
+ public void testLockTopologyChange() throws Exception {
+ final int nodeCnt = 5;
+ int threadCnt = 8;
+ final int keys = 100;
+
+ try {
+ final AtomicBoolean stop = new AtomicBoolean(false);
+
+ Queue<IgniteInternalFuture<Long>> q = new ArrayDeque<>(nodeCnt);
+
+ for (int i = 0; i < nodeCnt; i++) {
+ final Ignite ignite = startGrid(i);
+
+ IgniteInternalFuture<Long> f = GridTestUtils.runMultiThreadedAsync(new Runnable() {
+ @Override public void run() {
+ while (!Thread.currentThread().isInterrupted() && !stop.get()) {
+ IgniteCache<Integer, Integer> cache = ignite.cache(REPLICATED_TEST_CACHE);
+
+ for (int i = 0; i < keys; i++) {
+ Lock lock = cache.lock(i);
+ lock.lock();
+
+ cache.put(i, i);
+
+ lock.unlock();
+ }
+ }
+ }
+ }, threadCnt, "test-lock-thread");
+
+ q.add(f);
+
+ U.sleep(1_000);
+ }
+
+ stop.set(true);
+
+ IgniteInternalFuture<Long> f;
+
+ while ((f = q.poll()) != null)
+ f.get(2_000);
+ }
+ finally {
+ stopAllGrids();
+ }
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
public void testTxLockRelease() throws Exception {
startGrids(2);
[41/50] [abbrv] ignite git commit: IGNITE-4563 .NET: Fix
ICache.LoadCache failures on non-primitive arguments
Posted by vo...@apache.org.
IGNITE-4563 .NET: Fix ICache.LoadCache failures on non-primitive arguments
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/03f68223
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/03f68223
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/03f68223
Branch: refs/heads/ignite-1.9
Commit: 03f6822319b9c3d4ca7e76daef5a671097b913d9
Parents: 296bc41
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Fri Jan 20 12:56:26 2017 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Tue Feb 7 16:03:36 2017 +0300
----------------------------------------------------------------------
.../platform/cache/PlatformCache.java | 11 +-
.../Apache.Ignite.Core.Tests.csproj | 1 +
.../Cache/Store/CacheParallelLoadStoreTest.cs | 9 +-
.../Cache/Store/CacheStoreSessionTest.cs | 22 +-
.../Cache/Store/CacheStoreTest.cs | 333 ++++++++++++-------
.../Cache/Store/CacheTestStore.cs | 14 +
.../Cache/Store/NamedNodeCacheStoreTest.cs | 34 ++
.../Apache.Ignite.Core/Impl/Cache/CacheImpl.cs | 14 +-
8 files changed, 294 insertions(+), 144 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cache/PlatformCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cache/PlatformCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cache/PlatformCache.java
index aec3703..643907d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cache/PlatformCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cache/PlatformCache.java
@@ -815,7 +815,16 @@ public class PlatformCache extends PlatformAbstractTarget {
if (pred != null)
filter = platformCtx.createCacheEntryFilter(pred, 0);
- Object[] args = reader.readObjectArray();
+ Object[] args = null;
+
+ int argCnt = reader.readInt();
+
+ if (argCnt > 0) {
+ args = new Object[argCnt];
+
+ for (int i = 0; i < argCnt; i++)
+ args[i] = reader.readObjectDetached();
+ }
if (loc)
cache.localLoadCache(filter, args);
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj
index f440c25..179d67f 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj
@@ -72,6 +72,7 @@
<Compile Include="Cache\CacheResultTest.cs" />
<Compile Include="Cache\CacheSwapSpaceTest.cs" />
<Compile Include="Cache\Store\CacheStoreAdapterTest.cs" />
+ <Compile Include="Cache\Store\NamedNodeCacheStoreTest.cs" />
<Compile Include="Collections\MultiValueDictionaryTest.cs" />
<Compile Include="Collections\ReadOnlyCollectionTest.cs" />
<Compile Include="Collections\ReadOnlyDictionaryTest.cs" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheParallelLoadStoreTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheParallelLoadStoreTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheParallelLoadStoreTest.cs
index 105dea2..2e74b3f 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheParallelLoadStoreTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheParallelLoadStoreTest.cs
@@ -25,7 +25,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// <summary>
/// Tests for GridCacheParallelLoadStoreAdapter.
/// </summary>
- public class CacheParallelLoadStoreTest
+ public sealed class CacheParallelLoadStoreTest
{
// object store name
private const string ObjectStoreCacheName = "object_store_parallel";
@@ -34,11 +34,8 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// Set up test class.
/// </summary>
[TestFixtureSetUp]
- public virtual void BeforeTests()
+ public void BeforeTests()
{
- TestUtils.KillProcesses();
- TestUtils.JvmDebug = true;
-
Ignition.Start(new IgniteConfiguration
{
JvmClasspath = TestUtils.CreateTestClasspath(),
@@ -55,7 +52,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// Tear down test class.
/// </summary>
[TestFixtureTearDown]
- public virtual void AfterTests()
+ public void AfterTests()
{
Ignition.StopAll(true);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreSessionTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreSessionTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreSessionTest.cs
index 5cc0849..54e0414 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreSessionTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreSessionTest.cs
@@ -22,14 +22,13 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
using System.Collections.Generic;
using System.Linq;
using Apache.Ignite.Core.Cache.Store;
- using Apache.Ignite.Core.Impl;
using Apache.Ignite.Core.Resource;
using NUnit.Framework;
/// <summary>
/// Tests for store session.
/// </summary>
- public class CacheStoreSessionTest
+ public sealed class CacheStoreSessionTest
{
/** Grid name. */
private const string IgniteName = "grid";
@@ -47,7 +46,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// Set up routine.
/// </summary>
[TestFixtureSetUp]
- public virtual void BeforeTests()
+ public void BeforeTests()
{
//TestUtils.JVM_DEBUG = true;
@@ -71,7 +70,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// Tear down routine.
/// </summary>
[TestFixtureTearDown]
- public virtual void AfterTests()
+ public void AfterTests()
{
Ignition.StopAll(true);
}
@@ -147,7 +146,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// Dump operations.
/// </summary>
/// <param name="dump">Dump.</param>
- internal static void DumpOperations(ICollection<Operation> dump)
+ private static void DumpOperations(ICollection<Operation> dump)
{
_dumps.Add(dump);
}
@@ -155,6 +154,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// <summary>
/// Test store implementation.
/// </summary>
+ // ReSharper disable once UnusedMember.Global
public class Store : CacheStoreAdapter
{
/** Store session. */
@@ -215,7 +215,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// <summary>
/// Logged operation.
/// </summary>
- internal class Operation
+ private class Operation
{
/// <summary>
/// Constructor.
@@ -244,22 +244,22 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// <summary>
/// Cache name.
/// </summary>
- public string CacheName { get; set; }
+ public string CacheName { get; private set; }
/// <summary>
/// Operation type.
/// </summary>
- public OperationType Type { get; set; }
+ public OperationType Type { get; private set; }
/// <summary>
/// Key.
/// </summary>
- public int Key { get; set; }
+ public int Key { get; private set; }
/// <summary>
/// Value.
/// </summary>
- public int Value { get; set; }
+ public int Value { get; private set; }
/// <summary>
/// Commit flag.
@@ -270,7 +270,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/// <summary>
/// Operation types.
/// </summary>
- internal enum OperationType
+ private enum OperationType
{
/** Write. */
Write,
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
index 2a235aa..a66aea8 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
@@ -28,92 +28,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
using NUnit.Framework;
/// <summary>
- ///
- /// </summary>
- class Key
- {
- private readonly int _idx;
-
- public Key(int idx)
- {
- _idx = idx;
- }
-
- public int Index()
- {
- return _idx;
- }
-
- public override bool Equals(object obj)
- {
- if (obj == null || obj.GetType() != GetType())
- return false;
-
- Key key = (Key)obj;
-
- return key._idx == _idx;
- }
-
- public override int GetHashCode()
- {
- return _idx;
- }
- }
-
- /// <summary>
- ///
- /// </summary>
- class Value
- {
- private int _idx;
-
- public Value(int idx)
- {
- _idx = idx;
- }
-
- public int Index()
- {
- return _idx;
- }
- }
-
- /// <summary>
- /// Cache entry predicate.
- /// </summary>
- [Serializable]
- public class CacheEntryFilter : ICacheEntryFilter<int, string>
- {
- /** <inheritdoc /> */
- public bool Invoke(ICacheEntry<int, string> entry)
- {
- return entry.Key >= 105;
- }
- }
-
- /// <summary>
- /// Cache entry predicate that throws an exception.
- /// </summary>
- [Serializable]
- public class ExceptionalEntryFilter : ICacheEntryFilter<int, string>
- {
- /** <inheritdoc /> */
- public bool Invoke(ICacheEntry<int, string> entry)
- {
- throw new Exception("Expected exception in ExceptionalEntryFilter");
- }
- }
-
- /// <summary>
- /// Filter that can't be serialized.
- /// </summary>
- public class InvalidCacheEntryFilter : CacheEntryFilter
- {
- // No-op.
- }
-
- /// <summary>
- ///
+ /// Tests cache store functionality.
/// </summary>
public class CacheStoreTest
{
@@ -129,19 +44,12 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
/** */
private const string TemplateStoreCacheName = "template_store*";
- /** */
- private volatile int _storeCount = 3;
-
/// <summary>
- ///
+ /// Fixture set up.
/// </summary>
[TestFixtureSetUp]
public virtual void BeforeTests()
{
- TestUtils.KillProcesses();
-
- TestUtils.JvmDebug = true;
-
var cfg = new IgniteConfiguration
{
GridName = GridName,
@@ -155,7 +63,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
}
/// <summary>
- ///
+ /// Fixture tear down.
/// </summary>
[TestFixtureTearDown]
public void AfterTests()
@@ -164,16 +72,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
}
/// <summary>
- ///
- /// </summary>
- [SetUp]
- public void BeforeTest()
- {
- Console.WriteLine("Test started: " + TestContext.CurrentContext.Test.Name);
- }
-
- /// <summary>
- ///
+ /// Test tear down.
/// </summary>
[TearDown]
public void AfterTest()
@@ -188,11 +87,12 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
"Cache is not empty: " +
string.Join(", ", cache.Select(x => string.Format("[{0}:{1}]", x.Key, x.Value))));
- TestUtils.AssertHandleRegistryHasItems(300, _storeCount, Ignition.GetIgnite(GridName));
-
- Console.WriteLine("Test finished: " + TestContext.CurrentContext.Test.Name);
+ TestUtils.AssertHandleRegistryHasItems(300, 3, Ignition.GetIgnite(GridName));
}
+ /// <summary>
+ /// Tests that simple cache loading works and exceptions are propagated properly.
+ /// </summary>
[Test]
public void TestLoadCache()
{
@@ -219,6 +119,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
cache.LoadCache(new CacheEntryFilter(), 100, 10)).InnerException);
}
+ /// <summary>
+ /// Tests cache loading in local mode.
+ /// </summary>
[Test]
public void TestLocalLoadCache()
{
@@ -234,6 +137,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val_" + i, cache.Get(i));
}
+ /// <summary>
+ /// Tests that object metadata propagates properly during cache loading.
+ /// </summary>
[Test]
public void TestLoadCacheMetadata()
{
@@ -254,6 +160,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("Value", meta.TypeName);
}
+ /// <summary>
+ /// Tests asynchronous cache load.
+ /// </summary>
[Test]
public void TestLoadCacheAsync()
{
@@ -278,6 +187,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
.InnerException);
}
+ /// <summary>
+ /// Tests write-through and read-through behavior.
+ /// </summary>
[Test]
public void TestPutLoad()
{
@@ -285,7 +197,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
cache.Put(1, "val");
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(1, map.Count);
@@ -331,6 +243,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Get(1)).InnerException);
}
+ /// <summary>
+ /// Tests write-through and read-through behavior with binarizable values.
+ /// </summary>
[Test]
public void TestPutLoadBinarizable()
{
@@ -338,7 +253,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
cache.Put(1, new Value(1));
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(1, map.Count);
@@ -350,11 +265,14 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual(0, cache.GetSize());
- Assert.AreEqual(1, cache.Get(1).Index());
+ Assert.AreEqual(1, cache.Get(1).Index);
Assert.AreEqual(1, cache.GetSize());
}
+ /// <summary>
+ /// Tests write-through and read-through behavior with storeKeepBinary=false.
+ /// </summary>
[Test]
public void TestPutLoadObjects()
{
@@ -362,23 +280,26 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
cache.Put(1, new Value(1));
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(1, map.Count);
Value v = (Value)map[1];
- Assert.AreEqual(1, v.Index());
+ Assert.AreEqual(1, v.Index);
cache.LocalEvict(new[] { 1 });
Assert.AreEqual(0, cache.GetSize());
- Assert.AreEqual(1, cache.Get(1).Index());
+ Assert.AreEqual(1, cache.Get(1).Index);
Assert.AreEqual(1, cache.GetSize());
}
+ /// <summary>
+ /// Tests cache store LoadAll functionality.
+ /// </summary>
[Test]
public void TestPutLoadAll()
{
@@ -391,7 +312,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
cache.PutAll(putMap);
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(10, map.Count);
@@ -417,6 +338,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual(10, cache.GetSize());
}
+ /// <summary>
+ /// Tests cache store removal.
+ /// </summary>
[Test]
public void TestRemove()
{
@@ -425,7 +349,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
for (int i = 0; i < 10; i++)
cache.Put(i, "val_" + i);
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(10, map.Count);
@@ -438,6 +362,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val_" + i, map[i]);
}
+ /// <summary>
+ /// Tests cache store removal.
+ /// </summary>
[Test]
public void TestRemoveAll()
{
@@ -446,7 +373,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
for (int i = 0; i < 10; i++)
cache.Put(i, "val_" + i);
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(10, map.Count);
@@ -458,6 +385,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val_" + i, map[i]);
}
+ /// <summary>
+ /// Tests cache store with transactions.
+ /// </summary>
[Test]
public void TestTx()
{
@@ -472,13 +402,16 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
tx.Commit();
}
- IDictionary map = StoreMap();
+ IDictionary map = GetStoreMap();
Assert.AreEqual(1, map.Count);
Assert.AreEqual("val", map[1]);
}
+ /// <summary>
+ /// Tests multithreaded cache loading.
+ /// </summary>
[Test]
public void TestLoadCacheMultithreaded()
{
@@ -496,6 +429,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val_" + i, cache.Get(i));
}
+ /// <summary>
+ /// Tests that cache store property values are propagated from Spring XML.
+ /// </summary>
[Test]
public void TestCustomStoreProperties()
{
@@ -506,6 +442,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("String value", CacheTestStore.stringProperty);
}
+ /// <summary>
+ /// Tests cache store with dynamically started cache.
+ /// </summary>
[Test]
public void TestDynamicStoreStart()
{
@@ -524,6 +463,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual(handleCount, reg.Count);
}
+ /// <summary>
+ /// Tests the load all.
+ /// </summary>
[Test]
public void TestLoadAll([Values(true, false)] bool isAsync)
{
@@ -555,6 +497,49 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
}
/// <summary>
+ /// Tests the argument passing to LoadCache method.
+ /// </summary>
+ [Test]
+ public void TestArgumentPassing()
+ {
+ var cache = GetBinaryStoreCache<object, object>();
+
+ Action<object> checkValue = o =>
+ {
+ cache.Clear();
+ Assert.AreEqual(0, cache.GetSize());
+ cache.LoadCache(null, null, 1, o);
+ Assert.AreEqual(o, cache[1]);
+ };
+
+ // Null.
+ cache.LoadCache(null, null);
+ Assert.AreEqual(0, cache.GetSize());
+
+ // Empty args array.
+ cache.LoadCache(null);
+ Assert.AreEqual(0, cache.GetSize());
+
+ // Simple types.
+ checkValue(1);
+ checkValue(new[] {1, 2, 3});
+
+ checkValue("1");
+ checkValue(new[] {"1", "2"});
+
+ checkValue(Guid.NewGuid());
+ checkValue(new[] {Guid.NewGuid(), Guid.NewGuid()});
+
+ checkValue(DateTime.Now);
+ checkValue(new[] {DateTime.Now, DateTime.UtcNow});
+
+ // Collections.
+ checkValue(new ArrayList {1, "2", 3.3});
+ checkValue(new List<int> {1, 2});
+ checkValue(new Dictionary<int, string> {{1, "foo"}});
+ }
+
+ /// <summary>
/// Get's grid name for this test.
/// </summary>
/// <value>Grid name.</value>
@@ -563,31 +548,49 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
get { return null; }
}
- private IDictionary StoreMap()
+ /// <summary>
+ /// Gets the store map.
+ /// </summary>
+ private static IDictionary GetStoreMap()
{
return CacheTestStore.Map;
}
+ /// <summary>
+ /// Gets the cache.
+ /// </summary>
private ICache<int, string> GetCache()
{
return GetBinaryStoreCache<int, string>();
}
+ /// <summary>
+ /// Gets the binary store cache.
+ /// </summary>
private ICache<TK, TV> GetBinaryStoreCache<TK, TV>()
{
return Ignition.GetIgnite(GridName).GetCache<TK, TV>(BinaryStoreCacheName);
}
+ /// <summary>
+ /// Gets the object store cache.
+ /// </summary>
private ICache<TK, TV> GetObjectStoreCache<TK, TV>()
{
return Ignition.GetIgnite(GridName).GetCache<TK, TV>(ObjectStoreCacheName);
}
+ /// <summary>
+ /// Gets the custom store cache.
+ /// </summary>
private ICache<int, string> GetCustomStoreCache()
{
return Ignition.GetIgnite(GridName).GetCache<int, string>(CustomStoreCacheName);
}
+ /// <summary>
+ /// Gets the template store cache.
+ /// </summary>
private ICache<int, string> GetTemplateStoreCache()
{
var cacheName = TemplateStoreCacheName.Replace("*", Guid.NewGuid().ToString());
@@ -595,6 +598,9 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
return Ignition.GetIgnite(GridName).GetOrCreateCache<int, string>(cacheName);
}
+ /// <summary>
+ /// Checks the custom store error.
+ /// </summary>
private static void CheckCustomStoreError(Exception err)
{
var customErr = err as CacheTestStore.CustomStoreException ??
@@ -607,14 +613,93 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
}
/// <summary>
- ///
+ /// Cache key.
/// </summary>
- public class NamedNodeCacheStoreTest : CacheStoreTest
+ internal class Key
{
- /** <inheritDoc /> */
- protected override string GridName
+ /** */
+ private readonly int _idx;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="Key"/> class.
+ /// </summary>
+ public Key(int idx)
+ {
+ _idx = idx;
+ }
+
+ /** <inheritdoc /> */
+ public override bool Equals(object obj)
{
- get { return "name"; }
+ if (obj == null || obj.GetType() != GetType())
+ return false;
+
+ return ((Key)obj)._idx == _idx;
}
+
+ /** <inheritdoc /> */
+ public override int GetHashCode()
+ {
+ return _idx;
+ }
+ }
+
+ /// <summary>
+ /// Cache value.
+ /// </summary>
+ internal class Value
+ {
+ /** */
+ private readonly int _idx;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="Value"/> class.
+ /// </summary>
+ public Value(int idx)
+ {
+ _idx = idx;
+ }
+
+ /// <summary>
+ /// Gets the index.
+ /// </summary>
+ public int Index
+ {
+ get { return _idx; }
+ }
+ }
+
+ /// <summary>
+ /// Cache entry predicate.
+ /// </summary>
+ [Serializable]
+ public class CacheEntryFilter : ICacheEntryFilter<int, string>
+ {
+ /** <inheritdoc /> */
+ public bool Invoke(ICacheEntry<int, string> entry)
+ {
+ return entry.Key >= 105;
+ }
+ }
+
+ /// <summary>
+ /// Cache entry predicate that throws an exception.
+ /// </summary>
+ [Serializable]
+ public class ExceptionalEntryFilter : ICacheEntryFilter<int, string>
+ {
+ /** <inheritdoc /> */
+ public bool Invoke(ICacheEntry<int, string> entry)
+ {
+ throw new Exception("Expected exception in ExceptionalEntryFilter");
+ }
+ }
+
+ /// <summary>
+ /// Filter that can't be serialized.
+ /// </summary>
+ public class InvalidCacheEntryFilter : CacheEntryFilter
+ {
+ // No-op.
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheTestStore.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheTestStore.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheTestStore.cs
index 4224835..f80f5ce 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheTestStore.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheTestStore.cs
@@ -66,6 +66,20 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Debug.Assert(_grid != null);
+ if (args == null || args.Length == 0)
+ return;
+
+ if (args.Length == 3 && args[0] == null)
+ {
+ // Testing arguments passing.
+ var key = args[1];
+ var val = args[2];
+
+ act(key, val);
+
+ return;
+ }
+
if (LoadMultithreaded)
{
int cnt = 0;
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/NamedNodeCacheStoreTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/NamedNodeCacheStoreTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/NamedNodeCacheStoreTest.cs
new file mode 100644
index 0000000..02e257f
--- /dev/null
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/NamedNodeCacheStoreTest.cs
@@ -0,0 +1,34 @@
+/*
+ * 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.
+ */
+
+namespace Apache.Ignite.Core.Tests.Cache.Store
+{
+ using NUnit.Framework;
+
+ /// <summary>
+ /// Cache store test with named node.
+ /// </summary>
+ [TestFixture]
+ public class NamedNodeCacheStoreTest : CacheStoreTest
+ {
+ /** <inheritDoc /> */
+ protected override string GridName
+ {
+ get { return "name"; }
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/03f68223/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
index 186737c..b8dc6cb 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
@@ -225,7 +225,7 @@ namespace Apache.Ignite.Core.Impl.Cache
/// <summary>
/// Writes the load cache data to the writer.
/// </summary>
- private void WriteLoadCacheData(IBinaryRawWriter writer, ICacheEntryFilter<TK, TV> p, object[] args)
+ private void WriteLoadCacheData(BinaryWriter writer, ICacheEntryFilter<TK, TV> p, object[] args)
{
if (p != null)
{
@@ -237,7 +237,17 @@ namespace Apache.Ignite.Core.Impl.Cache
else
writer.WriteObject<CacheEntryFilterHolder>(null);
- writer.WriteArray(args);
+ if (args != null && args.Length > 0)
+ {
+ writer.WriteInt(args.Length);
+
+ foreach (var o in args)
+ writer.WriteObject(o);
+ }
+ else
+ {
+ writer.WriteInt(0);
+ }
}
/** <inheritDoc /> */
[43/50] [abbrv] ignite git commit: Merge branch 'ignite-1.6.12' into
ignite-1.7.7
Posted by vo...@apache.org.
Merge branch 'ignite-1.6.12' into ignite-1.7.7
# Conflicts:
# modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/dc24068c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/dc24068c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/dc24068c
Branch: refs/heads/ignite-1.9
Commit: dc24068cdd581ea0298c7750a6eec56184f2c3ec
Parents: 4bf7fdf 1859857
Author: devozerov <vo...@gridgain.com>
Authored: Wed Feb 8 12:36:42 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Wed Feb 8 12:36:42 2017 +0300
----------------------------------------------------------------------
----------------------------------------------------------------------
[06/50] [abbrv] ignite git commit: IGNITE-4516: Hadoop: implemented
optional compression for remote shuffle output. This closes #1399.
Posted by vo...@apache.org.
IGNITE-4516: Hadoop: implemented optional compression for remote shuffle output. This closes #1399.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e7d781ee
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e7d781ee
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e7d781ee
Branch: refs/heads/ignite-1.9
Commit: e7d781ee3221107d9a819dd70cb5776558a59e2a
Parents: 1776e9e
Author: devozerov <vo...@gridgain.com>
Authored: Thu Jan 5 11:30:42 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 12:39:09 2017 +0300
----------------------------------------------------------------------
.../processors/hadoop/HadoopJobProperty.java | 7 +++
.../shuffle/HadoopDirectShuffleMessage.java | 34 +++++++++++-
.../hadoop/shuffle/HadoopShuffleJob.java | 57 +++++++++++++++++---
.../shuffle/direct/HadoopDirectDataOutput.java | 14 +++++
.../direct/HadoopDirectDataOutputContext.java | 48 +++++++++++++++--
.../direct/HadoopDirectDataOutputState.java | 14 ++++-
.../hadoop/impl/HadoopTeraSortTest.java | 32 +++++++++--
7 files changed, 188 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
index a3115bf..60992d5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
@@ -103,6 +103,13 @@ public enum HadoopJobProperty {
SHUFFLE_MSG_SIZE("ignite.shuffle.message.size"),
/**
+ * Whether shuffle message should be compressed with GZIP.
+ * <p>
+ * Defaults to {@code false}.
+ */
+ SHUFFLE_MSG_GZIP("ignite.shuffle.message.gzip"),
+
+ /**
* Whether to stripe mapper output for remote reducers.
* <p>
* Defaults to {@code true}.
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java
index e81dc5f..f596100 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java
@@ -57,6 +57,9 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
@GridDirectTransient
private transient int bufLen;
+ /** Data length. */
+ private int dataLen;
+
/**
* Default constructor.
*/
@@ -72,8 +75,9 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
* @param cnt Count.
* @param buf Buffer.
* @param bufLen Buffer length.
+ * @param dataLen Data length.
*/
- public HadoopDirectShuffleMessage(HadoopJobId jobId, int reducer, int cnt, byte[] buf, int bufLen) {
+ public HadoopDirectShuffleMessage(HadoopJobId jobId, int reducer, int cnt, byte[] buf, int bufLen, int dataLen) {
assert jobId != null;
this.jobId = jobId;
@@ -81,6 +85,7 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
this.cnt = cnt;
this.buf = buf;
this.bufLen = bufLen;
+ this.dataLen = dataLen;
}
/**
@@ -111,6 +116,13 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
return buf;
}
+ /**
+ * @return Data length.
+ */
+ public int dataLength() {
+ return dataLen;
+ }
+
/** {@inheritDoc} */
@Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
writer.setBuffer(buf);
@@ -147,6 +159,12 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
writer.incrementState();
+ case 4:
+ if (!writer.writeInt("dataLen", dataLen))
+ return false;
+
+ writer.incrementState();
+
}
return true;
@@ -194,6 +212,14 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
reader.incrementState();
+ case 4:
+ dataLen = reader.readInt("dataLen");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
}
return reader.afterMessageRead(HadoopDirectShuffleMessage.class);
@@ -206,7 +232,7 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 4;
+ return 5;
}
/** {@inheritDoc} */
@@ -222,6 +248,8 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
out.writeInt(cnt);
U.writeByteArray(out, buf);
+
+ out.writeInt(dataLen);
}
/** {@inheritDoc} */
@@ -234,6 +262,8 @@ public class HadoopDirectShuffleMessage implements Message, HadoopMessage {
buf = U.readByteArray(in);
bufLen = buf != null ? buf.length : 0;
+
+ dataLen = in.readInt();
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
index 7713d6d..318ead3 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
@@ -56,6 +56,8 @@ import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.thread.IgniteThread;
import org.jetbrains.annotations.Nullable;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
@@ -63,10 +65,12 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicReferenceArray;
+import java.util.zip.GZIPInputStream;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.PARTITION_HASHMAP_SIZE;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.SHUFFLE_JOB_THROTTLE;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.SHUFFLE_MAPPER_STRIPED_OUTPUT;
+import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.SHUFFLE_MSG_GZIP;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.SHUFFLE_MSG_SIZE;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.SHUFFLE_REDUCER_NO_SORTING;
import static org.apache.ignite.internal.processors.hadoop.HadoopJobProperty.get;
@@ -79,6 +83,9 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
private static final int DFLT_SHUFFLE_MSG_SIZE = 1024 * 1024;
/** */
+ private static final boolean DFLT_SHUFFLE_MSG_GZIP = false;
+
+ /** */
private final HadoopJob job;
/** */
@@ -130,6 +137,9 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
/** Message size. */
private final int msgSize;
+ /** Whether to GZIP shuffle messages. */
+ private final boolean msgGzip;
+
/** Whether to strip mappers for remote execution. */
private final boolean stripeMappers;
@@ -190,6 +200,7 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
stripeMappers = stripeMappers0;
msgSize = get(job.info(), SHUFFLE_MSG_SIZE, DFLT_SHUFFLE_MSG_SIZE);
+ msgGzip = get(job.info(), SHUFFLE_MSG_GZIP, DFLT_SHUFFLE_MSG_GZIP);
locReducersCtx = new AtomicReferenceArray<>(totalReducerCnt);
@@ -360,22 +371,26 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
* @throws IgniteCheckedException Exception.
*/
public void onDirectShuffleMessage(T src, HadoopDirectShuffleMessage msg) throws IgniteCheckedException {
- assert msg.buffer() != null;
+ byte[] buf = extractBuffer(msg);
- HadoopTaskContext taskCtx = locReducersCtx.get(msg.reducer()).get();
+ assert buf != null;
+
+ int rdc = msg.reducer();
+
+ HadoopTaskContext taskCtx = locReducersCtx.get(rdc).get();
HadoopPerformanceCounter perfCntr = HadoopPerformanceCounter.getCounter(taskCtx.counters(), null);
- perfCntr.onShuffleMessage(msg.reducer(), U.currentTimeMillis());
+ perfCntr.onShuffleMessage(rdc, U.currentTimeMillis());
- HadoopMultimap map = getOrCreateMap(locMaps, msg.reducer());
+ HadoopMultimap map = getOrCreateMap(locMaps, rdc);
HadoopSerialization keySer = taskCtx.keySerialization();
HadoopSerialization valSer = taskCtx.valueSerialization();
// Add data from message to the map.
try (HadoopMultimap.Adder adder = map.startAdding(taskCtx)) {
- HadoopDirectDataInput in = new HadoopDirectDataInput(msg.buffer());
+ HadoopDirectDataInput in = new HadoopDirectDataInput(buf);
Object key = null;
Object val = null;
@@ -393,6 +408,31 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
}
/**
+ * Extract buffer from direct shuffle message.
+ *
+ * @param msg Message.
+ * @return Buffer.
+ */
+ private byte[] extractBuffer(HadoopDirectShuffleMessage msg) throws IgniteCheckedException {
+ if (msgGzip) {
+ byte[] res = new byte[msg.dataLength()];
+
+ try (GZIPInputStream in = new GZIPInputStream(new ByteArrayInputStream(msg.buffer()), res.length)) {
+ int len = in.read(res, 0, res.length);
+
+ assert len == res.length;
+ }
+ catch (IOException e) {
+ throw new IgniteCheckedException("Failed to uncompress direct shuffle message.", e);
+ }
+
+ return res;
+ }
+ else
+ return msg.buffer();
+ }
+
+ /**
* @param ack Shuffle ack.
*/
@SuppressWarnings("ConstantConditions")
@@ -595,7 +635,8 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
* @param rmtDirectCtx Remote direct context.
* @param reset Whether to perform reset.
*/
- private void sendShuffleMessage(int rmtMapIdx, @Nullable HadoopDirectDataOutputContext rmtDirectCtx, boolean reset) {
+ private void sendShuffleMessage(int rmtMapIdx, @Nullable HadoopDirectDataOutputContext rmtDirectCtx,
+ boolean reset) {
if (rmtDirectCtx == null)
return;
@@ -612,7 +653,7 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
rmtDirectCtx.reset();
HadoopDirectShuffleMessage msg = new HadoopDirectShuffleMessage(job.id(), rmtRdcIdx, cnt,
- state.buffer(), state.bufferLength());
+ state.buffer(), state.bufferLength(), state.dataLength());
T nodeId = reduceAddrs[rmtRdcIdx];
@@ -983,7 +1024,7 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
HadoopDirectDataOutputContext rmtDirectCtx = rmtDirectCtxs[idx];
if (rmtDirectCtx == null) {
- rmtDirectCtx = new HadoopDirectDataOutputContext(msgSize, taskCtx);
+ rmtDirectCtx = new HadoopDirectDataOutputContext(msgSize, msgGzip, taskCtx);
rmtDirectCtxs[idx] = rmtDirectCtx;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutput.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutput.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutput.java
index 151e552..5840994 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutput.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutput.java
@@ -170,6 +170,13 @@ public class HadoopDirectDataOutput extends OutputStream implements DataOutput {
}
/**
+ * @return Buffer length (how much memory is allocated).
+ */
+ public int bufferLength() {
+ return bufSize;
+ }
+
+ /**
* @return Position.
*/
public int position() {
@@ -184,6 +191,13 @@ public class HadoopDirectDataOutput extends OutputStream implements DataOutput {
}
/**
+ * Reset the stream.
+ */
+ public void reset() {
+ pos = 0;
+ }
+
+ /**
* Ensure that the given amount of bytes is available within the stream, then shift the position.
*
* @param cnt Count.
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputContext.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputContext.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputContext.java
index bc70ef3..454278b 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputContext.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputContext.java
@@ -18,16 +18,29 @@
package org.apache.ignite.internal.processors.hadoop.shuffle.direct;
import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.processors.hadoop.HadoopSerialization;
import org.apache.ignite.internal.processors.hadoop.HadoopTaskContext;
+import java.io.IOException;
+import java.util.zip.GZIPOutputStream;
+
/**
* Hadoop data output context for direct communication.
*/
public class HadoopDirectDataOutputContext {
+ /** Initial allocation size for GZIP output. We start with very low value, but then it will grow if needed. */
+ private static final int GZIP_OUT_MIN_ALLOC_SIZE = 1024;
+
+ /** GZIP buffer size. We should remove it when we implement efficient direct GZIP output. */
+ private static final int GZIP_BUFFER_SIZE = 8096;
+
/** Flush size. */
private final int flushSize;
+ /** Whether to perform GZIP. */
+ private final boolean gzip;
+
/** Key serialization. */
private final HadoopSerialization keySer;
@@ -37,6 +50,9 @@ public class HadoopDirectDataOutputContext {
/** Data output. */
private HadoopDirectDataOutput out;
+ /** Data output for GZIP. */
+ private HadoopDirectDataOutput gzipOut;
+
/** Number of keys written. */
private int cnt;
@@ -44,17 +60,22 @@ public class HadoopDirectDataOutputContext {
* Constructor.
*
* @param flushSize Flush size.
+ * @param gzip Whether to perform GZIP.
* @param taskCtx Task context.
* @throws IgniteCheckedException If failed.
*/
- public HadoopDirectDataOutputContext(int flushSize, HadoopTaskContext taskCtx)
+ public HadoopDirectDataOutputContext(int flushSize, boolean gzip, HadoopTaskContext taskCtx)
throws IgniteCheckedException {
this.flushSize = flushSize;
+ this.gzip = gzip;
keySer = taskCtx.keySerialization();
valSer = taskCtx.valueSerialization();
out = new HadoopDirectDataOutput(flushSize);
+
+ if (gzip)
+ gzipOut = new HadoopDirectDataOutput(Math.max(flushSize / 8, GZIP_OUT_MIN_ALLOC_SIZE));
}
/**
@@ -85,16 +106,35 @@ public class HadoopDirectDataOutputContext {
* @return State.
*/
public HadoopDirectDataOutputState state() {
- return new HadoopDirectDataOutputState(out.buffer(), out.position());
+ if (gzip) {
+ try {
+ try (GZIPOutputStream gzip = new GZIPOutputStream(gzipOut, GZIP_BUFFER_SIZE)) {
+ gzip.write(out.buffer(), 0, out.position());
+ }
+
+ return new HadoopDirectDataOutputState(gzipOut.buffer(), gzipOut.position(), out.position());
+ }
+ catch (IOException e) {
+ throw new IgniteException("Failed to compress.", e);
+ }
+ }
+ else
+ return new HadoopDirectDataOutputState(out.buffer(), out.position(), out.position());
}
/**
* Reset buffer.
*/
public void reset() {
- int allocSize = Math.max(flushSize, out.position());
+ if (gzip) {
+ // In GZIP mode we do not expose normal output to the outside. Hence, no need for reallocation, just reset.
+ out.reset();
+
+ gzipOut = new HadoopDirectDataOutput(gzipOut.bufferLength());
+ }
+ else
+ out = new HadoopDirectDataOutput(flushSize, out.bufferLength());
- out = new HadoopDirectDataOutput(flushSize, allocSize);
cnt = 0;
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputState.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputState.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputState.java
index a9c12e3..cadde7a 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputState.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/direct/HadoopDirectDataOutputState.java
@@ -27,15 +27,20 @@ public class HadoopDirectDataOutputState {
/** Buffer length. */
private final int bufLen;
+ /** Data length. */
+ private final int dataLen;
+
/**
* Constructor.
*
* @param buf Buffer.
* @param bufLen Buffer length.
+ * @param dataLen Data length.
*/
- public HadoopDirectDataOutputState(byte[] buf, int bufLen) {
+ public HadoopDirectDataOutputState(byte[] buf, int bufLen, int dataLen) {
this.buf = buf;
this.bufLen = bufLen;
+ this.dataLen = dataLen;
}
/**
@@ -51,4 +56,11 @@ public class HadoopDirectDataOutputState {
public int bufferLength() {
return bufLen;
}
+
+ /**
+ * @return Original data length.
+ */
+ public int dataLength() {
+ return dataLen;
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e7d781ee/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopTeraSortTest.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopTeraSortTest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopTeraSortTest.java
index b1fa91f..d237180 100644
--- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopTeraSortTest.java
+++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/impl/HadoopTeraSortTest.java
@@ -137,8 +137,10 @@ public class HadoopTeraSortTest extends HadoopAbstractSelfTest {
/**
* Does actual test TeraSort job Through Ignite API
+ *
+ * @param gzip Whether to use GZIP.
*/
- protected final void teraSort() throws Exception {
+ protected final void teraSort(boolean gzip) throws Exception {
System.out.println("TeraSort ===============================================================");
getFileSystem().delete(new Path(sortOutDir), true);
@@ -164,6 +166,10 @@ public class HadoopTeraSortTest extends HadoopAbstractSelfTest {
jobConf.set("mapred.max.split.size", String.valueOf(splitSize));
jobConf.setBoolean(HadoopJobProperty.SHUFFLE_MAPPER_STRIPED_OUTPUT.propertyName(), true);
+ jobConf.setInt(HadoopJobProperty.SHUFFLE_MSG_SIZE.propertyName(), 4096);
+
+ if (gzip)
+ jobConf.setBoolean(HadoopJobProperty.SHUFFLE_MSG_GZIP.propertyName(), true);
jobConf.set(HadoopJobProperty.JOB_PARTIALLY_RAW_COMPARATOR.propertyName(),
TextPartiallyRawComparator.class.getName());
@@ -347,12 +353,32 @@ public class HadoopTeraSortTest extends HadoopAbstractSelfTest {
/**
* Runs generate/sort/validate phases of the terasort sample.
- * @throws Exception
+ *
+ * @throws Exception If failed.
*/
public void testTeraSort() throws Exception {
+ checkTeraSort(false);
+ }
+
+ /**
+ * Runs generate/sort/validate phases of the terasort sample.
+ *
+ * @throws Exception If failed.
+ */
+ public void testTeraSortGzip() throws Exception {
+ checkTeraSort(true);
+ }
+
+ /**
+ * Check terasort.
+ *
+ * @param gzip GZIP flag.
+ * @throws Exception If failed.
+ */
+ private void checkTeraSort(boolean gzip) throws Exception {
teraGenerate();
- teraSort();
+ teraSort(gzip);
teraValidate();
}
[11/50] [abbrv] ignite git commit: Added cache.putAll benchmarks for
offheap cache.
Posted by vo...@apache.org.
Added cache.putAll benchmarks for offheap cache.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1820eb31
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1820eb31
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1820eb31
Branch: refs/heads/ignite-1.9
Commit: 1820eb3135c44d6768d53b95d69c2a93c7759b6f
Parents: 074a4a0
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 11 18:09:42 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 11 18:09:42 2017 +0300
----------------------------------------------------------------------
.../cache/IgnitePutAllOffHeapBenchmark.java | 30 ++++++++++++++++++++
.../cache/IgnitePutAllOffHeapTxBenchmark.java | 30 ++++++++++++++++++++
2 files changed, 60 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1820eb31/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapBenchmark.java
new file mode 100644
index 0000000..4ac67fd
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapBenchmark.java
@@ -0,0 +1,30 @@
+/*
+ * 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.yardstick.cache;
+
+import org.apache.ignite.IgniteCache;
+
+/**
+ *
+ */
+public class IgnitePutAllOffHeapBenchmark extends IgnitePutAllBenchmark {
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("atomic-offheap");
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/1820eb31/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
new file mode 100644
index 0000000..559f8e8
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
@@ -0,0 +1,30 @@
+/*
+ * 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.yardstick.cache;
+
+import org.apache.ignite.IgniteCache;
+
+/**
+ *
+ */
+public class IgnitePutAllOffHeapTxBenchmark extends IgnitePutAllTxBenchmark {
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("tx-offheap");
+ }
+}
[04/50] [abbrv] ignite git commit: IGNITE-3966: Hadoop: add Hadoop
native library to Java arguments automatically. This closes #1320.
Posted by vo...@apache.org.
IGNITE-3966: Hadoop: add Hadoop native library to Java arguments automatically. This closes #1320.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ac92bdb4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ac92bdb4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ac92bdb4
Branch: refs/heads/ignite-1.9
Commit: ac92bdb44ed0fb02893c1e7e9df4443a0a26d331
Parents: 494cf88
Author: Ivan Veselovskiy <iv...@gridgain.com>
Authored: Mon Dec 19 11:57:00 2016 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 12:38:51 2017 +0300
----------------------------------------------------------------------
bin/ignite.sh | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ac92bdb4/bin/ignite.sh
----------------------------------------------------------------------
diff --git a/bin/ignite.sh b/bin/ignite.sh
index 05d2d5f..efa3715 100755
--- a/bin/ignite.sh
+++ b/bin/ignite.sh
@@ -128,6 +128,15 @@ if [ "${ENABLE_ASSERTIONS}" = "1" ]; then
fi
#
+# If this is a Hadoop edition, and HADOOP_HOME set, add the native library location:
+#
+if [ -d "${IGNITE_HOME}/libs/ignite-hadoop/" ] && [ -n "${HADOOP_HOME}" ] && [ -d "${HADOOP_HOME}/lib/native/" ]; then
+ if [[ "${JVM_OPTS}${JVM_XOPTS}" != *-Djava.library.path=* ]]; then
+ JVM_OPTS="${JVM_OPTS} -Djava.library.path=${HADOOP_HOME}/lib/native/"
+ fi
+fi
+
+#
# Set main class to start service (grid node by default).
#
if [ "${MAIN_CLASS}" = "" ]; then
[38/50] [abbrv] ignite git commit: 1.9.0-SNAPSHOT
Posted by vo...@apache.org.
1.9.0-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6e68f64d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6e68f64d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6e68f64d
Branch: refs/heads/ignite-1.9
Commit: 6e68f64d484371c1d7e43dbe0b95906faf15242c
Parents: 9c401b0
Author: Ignite Teamcity <ig...@apache.org>
Authored: Fri Feb 3 13:01:27 2017 +0300
Committer: Ignite Teamcity <ig...@apache.org>
Committed: Fri Feb 3 13:01:27 2017 +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/benchmarks/pom.xml | 2 +-
modules/camel/pom.xml | 2 +-
modules/cassandra/pom.xml | 2 +-
modules/cassandra/serializers/pom.xml | 4 ++--
modules/cassandra/store/pom.xml | 4 ++--
modules/clients/pom.xml | 12 +++++-------
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/flink/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/osgi-karaf/pom.xml | 2 +-
modules/osgi-paxlogging/pom.xml | 2 +-
modules/osgi/pom.xml | 2 +-
modules/platforms/cpp/configure.ac | 2 +-
modules/platforms/cpp/configure.acrel | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
.../platforms/cpp/odbc/install/ignite-odbc-amd64.wxs | 2 +-
modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs | 2 +-
.../Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.AspNet/Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 6 +++---
.../Properties/AssemblyInfo.cs | 6 +++---
.../Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Core/Properties/AssemblyInfo.cs | 6 +++---
.../Properties/AssemblyInfo.cs | 6 +++---
.../Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Linq/Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.NLog/Properties/AssemblyInfo.cs | 6 +++---
.../dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 6 +++---
.../Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 6 +++---
.../Properties/AssemblyInfo.cs | 6 +++---
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-db/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/storm/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-console/pom.xml | 2 +-
modules/web-console/web-agent/pom.xml | 2 +-
modules/web/ignite-appserver-test/pom.xml | 2 +-
modules/web/ignite-websphere-test/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 +-
83 files changed, 119 insertions(+), 121 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 6f55560..255ce01 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -28,7 +28,7 @@
</parent>
<artifactId>ignite-examples</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/examples/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/examples/schema-import/pom.xml b/examples/schema-import/pom.xml
index 8ca92dd..93ad1a5 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index d0314af..46649c2 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aop</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/apache-license-gen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/apache-license-gen/pom.xml b/modules/apache-license-gen/pom.xml
index 74cf35e..fdd2a6e 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index ee300d4..91ad593 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aws</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/benchmarks/pom.xml
----------------------------------------------------------------------
diff --git a/modules/benchmarks/pom.xml b/modules/benchmarks/pom.xml
index 4a18c18..6bdac8c 100644
--- a/modules/benchmarks/pom.xml
+++ b/modules/benchmarks/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-benchmarks</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/camel/pom.xml b/modules/camel/pom.xml
index 841cfd9..8f1feb4 100644
--- a/modules/camel/pom.xml
+++ b/modules/camel/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-camel</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cassandra/pom.xml b/modules/cassandra/pom.xml
index a665538..7ec01b5 100644
--- a/modules/cassandra/pom.xml
+++ b/modules/cassandra/pom.xml
@@ -32,7 +32,7 @@
<artifactId>ignite-cassandra</artifactId>
<packaging>pom</packaging>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencyManagement>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/cassandra/serializers/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cassandra/serializers/pom.xml b/modules/cassandra/serializers/pom.xml
index 33be131..3c593c0 100644
--- a/modules/cassandra/serializers/pom.xml
+++ b/modules/cassandra/serializers/pom.xml
@@ -26,12 +26,12 @@
<parent>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-cassandra</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>ignite-cassandra-serializers</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/cassandra/store/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/pom.xml b/modules/cassandra/store/pom.xml
index 0b233fa..a81800a 100644
--- a/modules/cassandra/store/pom.xml
+++ b/modules/cassandra/store/pom.xml
@@ -26,12 +26,12 @@
<parent>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-cassandra</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>ignite-cassandra-store</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index 2e29cc0..d6cbbc1 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/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-clients</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
@@ -168,11 +167,10 @@
<configuration>
<target>
<exec executable="${doxygen.exec}" searchpath="true" dir="../platforms/dotnet/">
- <arg value="Apache.Ignite.dxg"/>
+ <arg value="Apache.Ignite.dxg" />
</exec>
- <copy file="../../assembly/docfiles/ignite_logo.png"
- todir="target/dotnetdoc/html"/>
+ <copy file="../../assembly/docfiles/ignite_logo.png" todir="target/dotnetdoc/html" />
</target>
</configuration>
</execution>
@@ -186,7 +184,7 @@
<configuration>
<target>
<exec executable="${doxygen.exec}" searchpath="true" dir="../platforms/cpp/">
- <arg value="cpp.dxg"/>
+ <arg value="cpp.dxg" />
</exec>
</target>
</configuration>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/cloud/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cloud/pom.xml b/modules/cloud/pom.xml
index 1bcc4bf..8f59524 100644
--- a/modules/cloud/pom.xml
+++ b/modules/cloud/pom.xml
@@ -29,7 +29,7 @@
</parent>
<artifactId>ignite-cloud</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/codegen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/codegen/pom.xml b/modules/codegen/pom.xml
index be287e3..2390e14 100644
--- a/modules/codegen/pom.xml
+++ b/modules/codegen/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-codegen</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 4c4343a..f12cdfa 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-core</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<repositories>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 dcebbe4..75859ad 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.8.0-SNAPSHOT
+ignite.version=1.9.0-SNAPSHOT
ignite.build=0
ignite.revision=DEV
ignite.rel.date=01011970
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/extdata/p2p/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/p2p/pom.xml b/modules/extdata/p2p/pom.xml
index 73a80cf..eb20e28 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 40518fb..625cbad 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/extdata/uri/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index ff30d0a..15f8524 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/flink/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flink/pom.xml b/modules/flink/pom.xml
index cd80f16..27c8928 100644
--- a/modules/flink/pom.xml
+++ b/modules/flink/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-flink</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/flume/pom.xml
----------------------------------------------------------------------
diff --git a/modules/flume/pom.xml b/modules/flume/pom.xml
index 5e6fa64..eafa6ce 100644
--- a/modules/flume/pom.xml
+++ b/modules/flume/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-flume</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/gce/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gce/pom.xml b/modules/gce/pom.xml
index 8340512..a6c0a49 100644
--- a/modules/gce/pom.xml
+++ b/modules/gce/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-gce</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index e65339b..6624115 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-geospatial</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index db302d7..98291c6 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hadoop</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index 40a3c95..96e7147 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hibernate</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index 58e82ed..aaaced3 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-indexing</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index 37f475b..41ec2d5 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jcl</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/jms11/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jms11/pom.xml b/modules/jms11/pom.xml
index eddeb70..e7a8e4b 100644
--- a/modules/jms11/pom.xml
+++ b/modules/jms11/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jms11</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index 1f22f02..f6fd425 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jta</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index 96e3d0d..9aff624 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-kafka</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index 24f3107..e4e4c33 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/log4j2/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j2/pom.xml b/modules/log4j2/pom.xml
index 99174ea..e0a1517 100644
--- a/modules/log4j2/pom.xml
+++ b/modules/log4j2/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j2</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/mesos/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mesos/pom.xml b/modules/mesos/pom.xml
index f407a3f..4c717c2 100644
--- a/modules/mesos/pom.xml
+++ b/modules/mesos/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mesos</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/mqtt/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mqtt/pom.xml b/modules/mqtt/pom.xml
index 4b0e1a9..d475d18 100644
--- a/modules/mqtt/pom.xml
+++ b/modules/mqtt/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mqtt</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/osgi-karaf/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-karaf/pom.xml b/modules/osgi-karaf/pom.xml
index c2d4553..98bafe7 100644
--- a/modules/osgi-karaf/pom.xml
+++ b/modules/osgi-karaf/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-osgi-karaf</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/osgi-paxlogging/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi-paxlogging/pom.xml b/modules/osgi-paxlogging/pom.xml
index 3cb2a88..1b5c5f8 100644
--- a/modules/osgi-paxlogging/pom.xml
+++ b/modules/osgi-paxlogging/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-osgi-paxlogging</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/osgi/pom.xml b/modules/osgi/pom.xml
index 5232a10..63fbc40 100644
--- a/modules/osgi/pom.xml
+++ b/modules/osgi/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-osgi</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/cpp/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/configure.ac b/modules/platforms/cpp/configure.ac
index 500bdbf..283097b 100644
--- a/modules/platforms/cpp/configure.ac
+++ b/modules/platforms/cpp/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.8.0.16695], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [1.9.0.17605], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/cpp/configure.acrel
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/configure.acrel b/modules/platforms/cpp/configure.acrel
index 984aa38..3d1f885 100644
--- a/modules/platforms/cpp/configure.acrel
+++ b/modules/platforms/cpp/configure.acrel
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [1.8.0.16695], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [1.9.0.17605], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/cpp/examples/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/configure.ac b/modules/platforms/cpp/examples/configure.ac
index 6f08490..094db24 100644
--- a/modules/platforms/cpp/examples/configure.ac
+++ b/modules/platforms/cpp/examples/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++ Examples], [1.8.0.16695], [dev@ignite.apache.org], [ignite-examples], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Examples], [1.9.0.17605], [dev@ignite.apache.org], [ignite-examples], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs b/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
index 2c12d9a..532f286 100644
--- a/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
+++ b/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
@@ -21,7 +21,7 @@
<Product Name='Apache Ignite ODBC 64-bit Driver' Manufacturer='The Apache Software Foundation'
Id='F3E308E4-910C-4AF5-82DE-2ACF4D64830E'
UpgradeCode='1D7AEFDF-6CD2-4FB5-88F2-811A89832D6D'
- Language='1033' Codepage='1252' Version='1.8.0.16695'>
+ Language='1033' Codepage='1252' Version='1.9.0.17605'>
<Package Id='*' Keywords='Installer' Description="Apache Ignite ODBC 64-bit Driver Installer"
Comments='Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are trademarks of The Apache Software Foundation.'
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs b/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
index 9e77e2a..3cc6fa6 100644
--- a/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
+++ b/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
@@ -21,7 +21,7 @@
<Product Name='Apache Ignite ODBC 32-bit Driver' Manufacturer='The Apache Software Foundation'
Id='D39CBABA-1E21-4701-AA5C-91EDA07B383B'
UpgradeCode='743902A4-365C-424E-B226-5B2898A3941E'
- Language='1033' Codepage='1252' Version='1.8.0.16695'>
+ Language='1033' Codepage='1252' Version='1.9.0.17605'>
<Package Id='*' Keywords='Installer' Description="Apache Ignite ODBC 32-bit Driver Installer"
Comments='Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are trademarks of The Apache Software Foundation.'
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
index d6cb3df..0c7f831 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
@@ -35,8 +35,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("18ea4c71-a11d-4ab1-8042-418f7559d84f")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
index 56e67ff..a1c19d3 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
@@ -33,9 +33,9 @@ using System.Runtime.InteropServices;
[assembly: Guid("13ea96fc-cc83-4164-a7c0-4f30ed797460")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 9537860..49a0395 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
index 88e619a..b123427 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
@@ -30,6 +30,6 @@ using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
[assembly: Guid("134707f6-155d-47f6-9eb2-c67abbf3c009")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 d938619..0b8ce1e 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,6 +45,6 @@ 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.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 b236907..463ed3e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 91e569a..2a14a25 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -33,9 +33,9 @@ using System.Runtime.InteropServices;
[assembly: Guid("97db45a8-f922-456a-a819-7b3c6e5e03ba")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
index fe5e7ce..67b1f88 100644
--- a/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
@@ -32,8 +32,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("cda5700e-78f3-4a9e-a9b0-704cbe94651c")]
-[assembly: AssemblyVersion("1.8.0.14218")]
-[assembly: AssemblyFileVersion("1.8.0.14218")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
index 7ce4c5f..acf46b0 100644
--- a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
@@ -32,9 +32,9 @@ using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
[assembly: Guid("c558518a-c1a0-4224-aaa9-a8688474b4dc")]
-[assembly: AssemblyVersion("1.8.0.14218")]
-[assembly: AssemblyFileVersion("1.8.0.14218")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
index a442355..8e07c7d 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("5b571661-17f4-4f29-8c7d-0edb38ca9b55")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
index 824252e..59d3108 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("6f82d669-382e-4435-8092-68c4440146d8")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
index f28278c..d40e981 100644
--- a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("c6b58e4a-a2e9-4554-ad02-68ce6da5cfb7")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 17d065f..d805afb 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 224efd8..9082035 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 8e6b8b5..3e55f91 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
-[assembly: AssemblyVersion("1.8.0.16695")]
-[assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.9.0.17605")]
+[assembly: AssemblyFileVersion("1.9.0.17605")]
+[assembly: AssemblyInformationalVersion("1.9.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index 14c70eb..fffa802 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 3920e0a..d1410f4 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index eb8a24c..1e803ad 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index e4e0005..9f213fc 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schedule</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/schema-import-db/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import-db/pom.xml b/modules/schema-import-db/pom.xml
index ba6b80e..8907da2 100644
--- a/modules/schema-import-db/pom.xml
+++ b/modules/schema-import-db/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schema-import-db</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index c8f341f..fd7de0e 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index e9733e0..9f7845a 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-slf4j</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index b39012c..7ae6386 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/spark/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 25da109..e549567 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index a746c93..ec72f09 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spring</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 9b1a633..e46692b 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-ssh</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/storm/pom.xml
----------------------------------------------------------------------
diff --git a/modules/storm/pom.xml b/modules/storm/pom.xml
index 19165be..a6d701c 100644
--- a/modules/storm/pom.xml
+++ b/modules/storm/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-storm</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/tools/pom.xml
----------------------------------------------------------------------
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index 232a1c2..c96bb07 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-tools</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/twitter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/twitter/pom.xml b/modules/twitter/pom.xml
index 4afd8bf..331af74 100644
--- a/modules/twitter/pom.xml
+++ b/modules/twitter/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-twitter</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index 2042d03..af4b800 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-urideploy</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/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 71599ba..0d25eea 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index c8a7c6e..c482189 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index ddbb474..3f33ed3 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.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/web-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web-console/pom.xml b/modules/web-console/pom.xml
index 18821b4..5a6d3ca 100644
--- a/modules/web-console/pom.xml
+++ b/modules/web-console/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web-console</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<build>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/web-console/web-agent/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/pom.xml b/modules/web-console/web-agent/pom.xml
index 736136a..7c9d459 100644
--- a/modules/web-console/web-agent/pom.xml
+++ b/modules/web-console/web-agent/pom.xml
@@ -32,7 +32,7 @@
<artifactId>ignite-web-agent</artifactId>
<packaging>jar</packaging>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/web/ignite-appserver-test/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/ignite-appserver-test/pom.xml b/modules/web/ignite-appserver-test/pom.xml
index 30b6e15..307e35a 100644
--- a/modules/web/ignite-appserver-test/pom.xml
+++ b/modules/web/ignite-appserver-test/pom.xml
@@ -30,7 +30,7 @@
<artifactId>ignite-appserver-test</artifactId>
<packaging>jar</packaging>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/web/ignite-websphere-test/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/ignite-websphere-test/pom.xml b/modules/web/ignite-websphere-test/pom.xml
index 5e4c415..b4eac95 100644
--- a/modules/web/ignite-websphere-test/pom.xml
+++ b/modules/web/ignite-websphere-test/pom.xml
@@ -30,7 +30,7 @@
<artifactId>ignite-websphere-test</artifactId>
<packaging>war</packaging>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index 8235b5b..c85e7ca 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/yardstick/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/pom.xml b/modules/yardstick/pom.xml
index cf404a7..8643156 100644
--- a/modules/yardstick/pom.xml
+++ b/modules/yardstick/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yardstick</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/yarn/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yarn/pom.xml b/modules/yarn/pom.xml
index 3229244..6e5fd6d 100644
--- a/modules/yarn/pom.xml
+++ b/modules/yarn/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yarn</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<properties>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/modules/zookeeper/pom.xml
----------------------------------------------------------------------
diff --git a/modules/zookeeper/pom.xml b/modules/zookeeper/pom.xml
index ec9ff7b..2db5cac 100644
--- a/modules/zookeeper/pom.xml
+++ b/modules/zookeeper/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-zookeeper</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url>
<dependencies>
http://git-wip-us.apache.org/repos/asf/ignite/blob/6e68f64d/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index ac23b38..d83bb1b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>apache-ignite</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
[05/50] [abbrv] ignite git commit: IGNITE-4458: Hadoop: "striped"
shuffle mode is default from now on. This closes #1390.
Posted by vo...@apache.org.
IGNITE-4458: Hadoop: "striped" shuffle mode is default from now on. This closes #1390.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1776e9eb
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1776e9eb
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1776e9eb
Branch: refs/heads/ignite-1.9
Commit: 1776e9eb04895bbb870f7c6aa89ca96db2af31b7
Parents: ac92bdb
Author: tledkov-gridgain <tl...@gridgain.com>
Authored: Thu Dec 29 11:14:10 2016 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 12:39:00 2017 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/hadoop/HadoopJobProperty.java | 2 +-
.../internal/processors/hadoop/shuffle/HadoopShuffleJob.java | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1776e9eb/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
index 4398acd..a3115bf 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobProperty.java
@@ -105,7 +105,7 @@ public enum HadoopJobProperty {
/**
* Whether to stripe mapper output for remote reducers.
* <p>
- * Defaults to {@code false}.
+ * Defaults to {@code true}.
*/
SHUFFLE_MAPPER_STRIPED_OUTPUT("ignite.shuffle.mapper.striped.output"),
http://git-wip-us.apache.org/repos/asf/ignite/blob/1776e9eb/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
index 1c546a1..7713d6d 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
@@ -169,7 +169,7 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
this.embedded = embedded;
// No stripes for combiner.
- boolean stripeMappers0 = get(job.info(), SHUFFLE_MAPPER_STRIPED_OUTPUT, false);
+ boolean stripeMappers0 = get(job.info(), SHUFFLE_MAPPER_STRIPED_OUTPUT, true);
if (stripeMappers0) {
if (job.info().hasCombiner()) {
[20/50] [abbrv] ignite git commit: IGNITE-3699 (Backported from
master) CreatedExpiryPolicy doesn't work if entry is loaded from store
Posted by vo...@apache.org.
IGNITE-3699 (Backported from master) CreatedExpiryPolicy doesn't work if entry is loaded from store
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e832ef9c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e832ef9c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e832ef9c
Branch: refs/heads/ignite-1.9
Commit: e832ef9ce363fad34097aa78293a57f4aefcbcc0
Parents: 71a76c8
Author: Anton Vinogradov <av...@apache.org>
Authored: Tue Jan 24 14:44:33 2017 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Tue Jan 24 14:44:33 2017 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheAdapter.java | 35 ++++---
.../processors/cache/GridCacheEntryEx.java | 4 +-
.../processors/cache/GridCacheMapEntry.java | 17 +++-
.../GridDistributedCacheAdapter.java | 6 +-
.../distributed/dht/GridDhtCacheAdapter.java | 6 +-
.../distributed/dht/GridDhtLockFuture.java | 21 +++-
.../dht/GridDhtTransactionalCacheAdapter.java | 7 ++
.../distributed/dht/GridDhtTxLocalAdapter.java | 8 +-
.../dht/GridPartitionedGetFuture.java | 1 +
.../dht/GridPartitionedSingleGetFuture.java | 2 +
.../dht/atomic/GridDhtAtomicCache.java | 3 +-
.../dht/colocated/GridDhtColocatedCache.java | 10 ++
.../colocated/GridDhtColocatedLockFuture.java | 10 +-
.../distributed/near/GridNearAtomicCache.java | 1 +
.../distributed/near/GridNearGetFuture.java | 1 +
.../distributed/near/GridNearGetRequest.java | 77 +++++++++-----
.../distributed/near/GridNearLockFuture.java | 7 ++
.../distributed/near/GridNearLockRequest.java | 81 ++++++++++-----
.../near/GridNearSingleGetRequest.java | 57 ++++++++---
.../near/GridNearTransactionalCache.java | 2 +
.../cache/distributed/near/GridNearTxLocal.java | 17 +++-
.../processors/cache/local/GridLocalCache.java | 1 +
.../local/atomic/GridLocalAtomicCache.java | 1 +
.../transactions/IgniteTxLocalAdapter.java | 37 +++++--
.../cache/transactions/IgniteTxLocalEx.java | 3 +
.../processors/cache/GridCacheTestEntryEx.java | 3 +-
...eCacheExpiryPolicyWithStoreAbstractTest.java | 102 +++++++++++++++++++
.../IgniteCacheTxExpiryPolicyWithStoreTest.java | 21 ++++
28 files changed, 432 insertions(+), 109 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/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 59665bb..dc8f030 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
@@ -528,6 +528,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
* @param retval Flag to return value.
* @param isolation Transaction isolation.
* @param invalidate Invalidate flag.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @return Locks future.
*/
@@ -539,6 +540,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
boolean retval,
TransactionIsolation isolation,
boolean invalidate,
+ long createTtl,
long accessTtl);
/**
@@ -1873,7 +1875,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
@Nullable final UUID subjId,
final String taskName,
final boolean deserializeBinary,
- @Nullable IgniteCacheExpiryPolicy expiry,
+ @Nullable final IgniteCacheExpiryPolicy expiry,
final boolean skipVals,
final boolean keepCacheObjects,
boolean canRemap,
@@ -2027,7 +2029,8 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
cacheVal,
res.version(),
null,
- readerArgs);
+ readerArgs,
+ expiry);
if (log.isDebugEnabled())
log.debug("Set value loaded from store into entry [" +
@@ -5936,28 +5939,28 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
}
/**
- * @param ttl Access TTL.
+ * @param createTtl Create TTL.
+ * @param accessTtl Access TTL.
* @return Access expire policy.
*/
- @Nullable public static CacheExpiryPolicy forAccess(final long ttl) {
- if (ttl == CU.TTL_NOT_CHANGED)
+ @Nullable public static CacheExpiryPolicy fromRemote(final long createTtl, final long accessTtl) {
+ if (createTtl == CU.TTL_NOT_CHANGED && accessTtl == CU.TTL_NOT_CHANGED)
return null;
return new CacheExpiryPolicy() {
- @Override public long forAccess() {
- return ttl;
+ @Override public long forCreate() {
+ return createTtl;
}
- };
- }
- /** {@inheritDoc} */
- @Override public long forCreate() {
- return CU.TTL_NOT_CHANGED;
- }
+ @Override public long forAccess() {
+ return accessTtl;
+ }
- /** {@inheritDoc} */
- @Override public long forUpdate() {
- return CU.TTL_NOT_CHANGED;
+ /** {@inheritDoc} */
+ @Override public long forUpdate() {
+ return CU.TTL_NOT_CHANGED;
+ }
+ };
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index 51f423a..3c42d53 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@ -756,6 +756,7 @@ public interface GridCacheEntryEx {
* @param curVer Version to match or {@code null} if match is not required.
* @param newVer Version to set.
* @param readerArgs Reader will be added if not null.
+ * @param loadExpiryPlc Expiry policy if entry is loaded from store.
* @return Current version and value.
* @throws IgniteCheckedException If index could not be updated.
* @throws GridCacheEntryRemovedException If entry was removed.
@@ -763,7 +764,8 @@ public interface GridCacheEntryEx {
public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
@Nullable GridCacheVersion curVer,
@Nullable GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs)
+ @Nullable ReaderArguments readerArgs,
+ @Nullable IgniteCacheExpiryPolicy loadExpiryPlc)
throws IgniteCheckedException, GridCacheEntryRemovedException;
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/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 59e4181..7e26719 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
@@ -3624,7 +3624,8 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
@Override public synchronized T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs)
+ @Nullable ReaderArguments readerArgs,
+ @Nullable IgniteCacheExpiryPolicy loadExpiryPlc)
throws IgniteCheckedException, GridCacheEntryRemovedException
{
checkObsolete();
@@ -3643,9 +3644,19 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
CacheObject old = rawGetOrUnmarshalUnlocked(false);
- long ttl = ttlExtras();
+ long ttl;
+ long expTime;
- long expTime = CU.toExpireTime(ttl);
+ if (loadExpiryPlc != null) {
+ IgniteBiTuple<Long, Long> initTtlAndExpireTime = initialTtlAndExpireTime(loadExpiryPlc);
+
+ ttl = initTtlAndExpireTime.get1();
+ expTime = initTtlAndExpireTime.get2();
+ }
+ else {
+ ttl = ttlExtras();
+ expTime = expireTimeExtras();
+ }
// Detach value before index update.
val = cctx.kernalContext().cacheObjects().prepareForCache(val, cctx);
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
index 03f6474..d89a468 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheAdapter.java
@@ -102,11 +102,12 @@ public abstract class GridDistributedCacheAdapter<K, V> extends GridCacheAdapter
boolean retval,
TransactionIsolation isolation,
boolean isInvalidate,
+ long createTtl,
long accessTtl
) {
assert tx != null;
- return lockAllAsync(keys, timeout, tx, isInvalidate, isRead, retval, isolation, accessTtl);
+ return lockAllAsync(keys, timeout, tx, isInvalidate, isRead, retval, isolation, createTtl, accessTtl);
}
/** {@inheritDoc} */
@@ -121,6 +122,7 @@ public abstract class GridDistributedCacheAdapter<K, V> extends GridCacheAdapter
false,
/*retval*/true,
null,
+ -1L,
-1L);
}
@@ -132,6 +134,7 @@ public abstract class GridDistributedCacheAdapter<K, V> extends GridCacheAdapter
* @param isRead Indicates whether value is read or written.
* @param retval Flag to return value.
* @param isolation Transaction isolation.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @return Future for locks.
*/
@@ -142,6 +145,7 @@ public abstract class GridDistributedCacheAdapter<K, V> extends GridCacheAdapter
boolean isRead,
boolean retval,
@Nullable TransactionIsolation isolation,
+ long createTtl,
long accessTtl);
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
index 543cee1..bc34df7 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
@@ -760,7 +760,7 @@ public abstract class GridDhtCacheAdapter<K, V> extends GridDistributedCacheAdap
protected void processNearSingleGetRequest(final UUID nodeId, final GridNearSingleGetRequest req) {
assert ctx.affinityNode();
- final CacheExpiryPolicy expiryPlc = CacheExpiryPolicy.forAccess(req.accessTtl());
+ final CacheExpiryPolicy expiryPlc = CacheExpiryPolicy.fromRemote(req.createTtl(), req.accessTtl());
IgniteInternalFuture<GridCacheEntryInfo> fut =
getDhtSingleAsync(
@@ -860,9 +860,7 @@ public abstract class GridDhtCacheAdapter<K, V> extends GridDistributedCacheAdap
assert ctx.affinityNode();
assert !req.reload() : req;
- long ttl = req.accessTtl();
-
- final CacheExpiryPolicy expiryPlc = CacheExpiryPolicy.forAccess(ttl);
+ final CacheExpiryPolicy expiryPlc = CacheExpiryPolicy.fromRemote(req.createTtl(), req.accessTtl());
IgniteInternalFuture<Collection<GridCacheEntryInfo>> fut =
getDhtAsync(nodeId,
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java
index d77933e..686a4c6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java
@@ -156,6 +156,9 @@ public final class GridDhtLockFuture extends GridCompoundIdentityFuture<Boolean>
/** Pending locks. */
private final Collection<KeyCacheObject> pendingLocks;
+ /** TTL for create operation. */
+ private long createTtl;
+
/** TTL for read operation. */
private long accessTtl;
@@ -194,6 +197,7 @@ public final class GridDhtLockFuture extends GridCompoundIdentityFuture<Boolean>
long timeout,
GridDhtTxLocalAdapter tx,
long threadId,
+ long createTtl,
long accessTtl,
CacheEntryPredicate[] filter,
boolean skipStore,
@@ -214,6 +218,7 @@ public final class GridDhtLockFuture extends GridCompoundIdentityFuture<Boolean>
this.timeout = timeout;
this.filter = filter;
this.tx = tx;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.skipStore = skipStore;
this.keepBinary = keepBinary;
@@ -1059,10 +1064,22 @@ public final class GridDhtLockFuture extends GridCompoundIdentityFuture<Boolean>
try {
CacheObject val0 = cctx.toCacheObject(val);
+ long ttl = createTtl;
+ long expireTime;
+
+ if (ttl == CU.TTL_ZERO)
+ expireTime = CU.expireTimeInPast();
+ else {
+ if (ttl == CU.TTL_NOT_CHANGED)
+ ttl = CU.TTL_ETERNAL;
+
+ expireTime = CU.toExpireTime(ttl);
+ }
+
entry0.initialValue(val0,
ver,
- 0,
- 0,
+ ttl,
+ expireTime,
false,
topVer,
GridDrType.DR_LOAD,
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
index 01bc4e0..a9e3bc4 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
@@ -677,6 +677,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
boolean isRead,
boolean retval,
TransactionIsolation isolation,
+ long createTtl,
long accessTtl) {
CacheOperationContext opCtx = ctx.operationContextPerCall();
@@ -688,6 +689,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
isRead,
retval,
isolation,
+ createTtl,
accessTtl,
CU.empty0(),
opCtx != null && opCtx.skipStore(),
@@ -704,6 +706,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
* @param isRead Read flag.
* @param retval Return value flag.
* @param isolation Transaction isolation.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter Optional filter.
* @param skipStore Skip store flag.
@@ -716,6 +719,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
boolean isRead,
boolean retval,
TransactionIsolation isolation,
+ long createTtl,
long accessTtl,
CacheEntryPredicate[] filter,
boolean skipStore,
@@ -738,6 +742,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
timeout,
tx,
tx.threadId(),
+ createTtl,
accessTtl,
filter,
skipStore,
@@ -859,6 +864,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
req.timeout(),
tx,
req.threadId(),
+ req.createTtl(),
req.accessTtl(),
filter,
req.skipStore(),
@@ -1007,6 +1013,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
req.messageId(),
req.txRead(),
req.needReturnValue(),
+ req.createTtl(),
req.accessTtl(),
req.skipStore(),
req.keepBinary());
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
index 35dfb62..12a45d8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
@@ -148,7 +148,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
storeEnabled,
onePhaseCommit,
txSize,
- subjId,
+ subjId,
taskNameHash
);
@@ -534,6 +534,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
* @param entries Entries to lock.
* @param msgId Message ID.
* @param read Read flag.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param needRetVal Return value flag.
* @param skipStore Skip store flag.
@@ -546,6 +547,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
long msgId,
final boolean read,
final boolean needRetVal,
+ long createTtl,
long accessTtl,
boolean skipStore,
boolean keepBinary
@@ -652,6 +654,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
passedKeys,
read,
needRetVal,
+ createTtl,
accessTtl,
null,
skipStore,
@@ -670,6 +673,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
* @param passedKeys Passed keys.
* @param read {@code True} if read.
* @param needRetVal Return value flag.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter Entry write filter.
* @param skipStore Skip store flag.
@@ -681,6 +685,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
final Collection<KeyCacheObject> passedKeys,
final boolean read,
final boolean needRetVal,
+ final long createTtl,
final long accessTtl,
@Nullable final CacheEntryPredicate[] filter,
boolean skipStore,
@@ -706,6 +711,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
read,
needRetVal,
isolation,
+ createTtl,
accessTtl,
CU.empty0(),
skipStore,
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
index c8e2cf3..5892b37 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
@@ -341,6 +341,7 @@ public class GridPartitionedGetFuture<K, V> extends CacheDistributedGetFutureAda
topVer,
subjId,
taskName == null ? 0 : taskName.hashCode(),
+ expiryPlc != null ? expiryPlc.forCreate() : -1L,
expiryPlc != null ? expiryPlc.forAccess() : -1L,
skipVals,
cctx.deploymentEnabled());
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
index e369bfa..7c14f35 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
@@ -281,6 +281,7 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im
topVer,
subjId,
taskName == null ? 0 : taskName.hashCode(),
+ expiryPlc != null ? expiryPlc.forCreate() : -1L,
expiryPlc != null ? expiryPlc.forAccess() : -1L,
skipVals,
/**add reader*/false,
@@ -300,6 +301,7 @@ public class GridPartitionedSingleGetFuture extends GridFutureAdapter<Object> im
topVer,
subjId,
taskName == null ? 0 : taskName.hashCode(),
+ expiryPlc != null ? expiryPlc.forCreate() : -1L,
expiryPlc != null ? expiryPlc.forAccess() : -1L,
skipVals,
cctx.deploymentEnabled());
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/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 f601e0a..2f97bcc 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
@@ -863,6 +863,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
boolean isRead,
boolean retval,
@Nullable TransactionIsolation isolation,
+ long createTtl,
long accessTtl) {
return new FinishedLockFuture(new UnsupportedOperationException("Locks are not supported for " +
"CacheAtomicityMode.ATOMIC mode (use CacheAtomicityMode.TRANSACTIONAL instead)"));
@@ -2293,7 +2294,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
try {
GridCacheVersion ver = entry.version();
- entry.versionedValue(ctx.toCacheObject(v), null, ver, null);
+ entry.versionedValue(ctx.toCacheObject(v), null, ver, null, null);
}
catch (GridCacheEntryRemovedException e) {
assert false : "Entry should not get obsolete while holding lock [entry=" + entry +
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
index 29f0607..5ed30db 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
@@ -615,6 +615,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
boolean isRead,
boolean retval,
@Nullable TransactionIsolation isolation,
+ long createTtl,
long accessTtl
) {
assert tx == null || tx instanceof GridNearTxLocal : tx;
@@ -629,6 +630,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
isRead,
retval,
timeout,
+ createTtl,
accessTtl,
CU.empty0(),
opCtx != null && opCtx.skipStore(),
@@ -876,6 +878,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
* @param txRead Tx read.
* @param retval Return value flag.
* @param timeout Lock timeout.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter filter Optional filter.
* @param skipStore Skip store flag.
@@ -891,6 +894,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
final boolean txRead,
final boolean retval,
final long timeout,
+ final long createTtl,
final long accessTtl,
@Nullable final CacheEntryPredicate[] filter,
final boolean skipStore,
@@ -915,6 +919,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
txRead,
retval,
timeout,
+ createTtl,
accessTtl,
filter,
skipStore,
@@ -936,6 +941,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
txRead,
retval,
timeout,
+ createTtl,
accessTtl,
filter,
skipStore,
@@ -956,6 +962,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
* @param txRead Tx read.
* @param retval Return value flag.
* @param timeout Lock timeout.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter filter Optional filter.
* @param skipStore Skip store flag.
@@ -971,6 +978,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
final boolean txRead,
boolean retval,
final long timeout,
+ final long createTtl,
final long accessTtl,
@Nullable final CacheEntryPredicate[] filter,
boolean skipStore,
@@ -988,6 +996,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
timeout,
tx,
threadId,
+ createTtl,
accessTtl,
filter,
skipStore,
@@ -1056,6 +1065,7 @@ public class GridDhtColocatedCache<K, V> extends GridDhtTransactionalCacheAdapte
keys,
retval,
txRead,
+ createTtl,
accessTtl,
skipStore,
keepBinary);
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java
index 5557d34..40e87ee 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java
@@ -145,6 +145,9 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
/** Trackable flag (here may be non-volatile). */
private boolean trackable;
+ /** TTL for create operation. */
+ private final long createTtl;
+
/** TTL for read operation. */
private final long accessTtl;
@@ -164,6 +167,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
* @param read Read flag.
* @param retval Flag to return value or not.
* @param timeout Lock acquisition timeout.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter Filter.
* @param skipStore Skip store flag.
@@ -175,6 +179,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
boolean read,
boolean retval,
long timeout,
+ long createTtl,
long accessTtl,
CacheEntryPredicate[] filter,
boolean skipStore,
@@ -189,6 +194,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
this.read = read;
this.retval = retval;
this.timeout = timeout;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.filter = filter;
this.skipStore = skipStore;
@@ -926,6 +932,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
inTx() && tx.syncMode() == FULL_SYNC,
inTx() ? tx.subjectId() : null,
inTx() ? tx.taskNameHash() : 0,
+ read ? createTtl : -1L,
read ? accessTtl : -1L,
skipStore,
keepBinary,
@@ -1102,7 +1109,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
/**
* Locks given keys directly through dht cache.
- * @param keys Collection of keys.
+ * @param keys Collection of keys.
* @param topVer Topology version to lock on.
*/
private void lockLocally(
@@ -1121,6 +1128,7 @@ public final class GridDhtColocatedLockFuture extends GridCompoundIdentityFuture
read,
retval,
timeout,
+ createTtl,
accessTtl,
filter,
skipStore,
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
index a8219b0..d1056fd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
@@ -641,6 +641,7 @@ public class GridNearAtomicCache<K, V> extends GridNearCacheAdapter<K, V> {
boolean isRead,
boolean retval,
@Nullable TransactionIsolation isolation,
+ long createTtl,
long accessTtl) {
return dht.lockAllAsync(null, timeout);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/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 8bc513e..8c64e3e 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
@@ -375,6 +375,7 @@ public final class GridNearGetFuture<K, V> extends CacheDistributedGetFutureAdap
topVer,
subjId,
taskName == null ? 0 : taskName.hashCode(),
+ expiryPlc != null ? expiryPlc.forCreate() : -1L,
expiryPlc != null ? expiryPlc.forAccess() : -1L,
skipVals,
cctx.deploymentEnabled());
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
index fa7f367..e02658c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
@@ -100,6 +100,9 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
private int taskNameHash;
/** TTL for read operation. */
+ private long createTtl;
+
+ /** TTL for read operation. */
private long accessTtl;
/**
@@ -121,6 +124,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
* @param topVer Topology version.
* @param subjId Subject ID.
* @param taskNameHash Task name hash.
+ * @param createTtl New TTL to set after entry is created, -1 to leave unchanged.
* @param accessTtl New TTL to set after entry is accessed, -1 to leave unchanged.
* @param addDepInfo Deployment info.
*/
@@ -134,6 +138,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
@NotNull AffinityTopologyVersion topVer,
UUID subjId,
int taskNameHash,
+ long createTtl,
long accessTtl,
boolean skipVals,
boolean addDepInfo
@@ -161,6 +166,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
this.topVer = topVer;
this.subjId = subjId;
this.taskNameHash = taskNameHash;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.skipVals = skipVals;
this.addDepInfo = addDepInfo;
@@ -238,6 +244,13 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
}
/**
+ * @return New TTL to set after entry is created, -1 to leave unchanged.
+ */
+ public long createTtl() {
+ return createTtl;
+ }
+
+ /**
* @return New TTL to set after entry is accessed, -1 to leave unchanged.
*/
public long accessTtl() {
@@ -320,73 +333,79 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
writer.incrementState();
case 4:
- if (!writer.writeCollection("flags", flags, MessageCollectionItemType.BOOLEAN))
+ if (!writer.writeLong("createTtl", createTtl))
return false;
writer.incrementState();
case 5:
- if (!writer.writeIgniteUuid("futId", futId))
+ if (!writer.writeCollection("flags", flags, MessageCollectionItemType.BOOLEAN))
return false;
writer.incrementState();
case 6:
- if (!writer.writeCollection("keys", keys, MessageCollectionItemType.MSG))
+ if (!writer.writeIgniteUuid("futId", futId))
return false;
writer.incrementState();
case 7:
- if (!writer.writeIgniteUuid("miniId", miniId))
+ if (!writer.writeCollection("keys", keys, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
case 8:
- if (!writer.writeBoolean("readThrough", readThrough))
+ if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
case 9:
- if (!writer.writeBoolean("reload", reload))
+ if (!writer.writeCollection("partIds", partIds, MessageCollectionItemType.INT))
return false;
writer.incrementState();
case 10:
- if (!writer.writeBoolean("skipVals", skipVals))
+ if (!writer.writeBoolean("readThrough", readThrough))
return false;
writer.incrementState();
case 11:
- if (!writer.writeUuid("subjId", subjId))
+ if (!writer.writeBoolean("reload", reload))
return false;
writer.incrementState();
case 12:
- if (!writer.writeInt("taskNameHash", taskNameHash))
+ if (!writer.writeBoolean("skipVals", skipVals))
return false;
writer.incrementState();
case 13:
- if (!writer.writeMessage("topVer", topVer))
+ if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
case 14:
- if (!writer.writeMessage("ver", ver))
+ if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
case 15:
- if (!writer.writeCollection("partIds", partIds, MessageCollectionItemType.INT))
+ if (!writer.writeMessage("topVer", topVer))
+ return false;
+
+ writer.incrementState();
+
+ case 16:
+ if (!writer.writeMessage("ver", ver))
return false;
writer.incrementState();
@@ -416,7 +435,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 4:
- flags = reader.readCollection("flags", MessageCollectionItemType.BOOLEAN);
+ createTtl = reader.readLong("createTtl");
if (!reader.isLastRead())
return false;
@@ -424,7 +443,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 5:
- futId = reader.readIgniteUuid("futId");
+ flags = reader.readCollection("flags", MessageCollectionItemType.BOOLEAN);
if (!reader.isLastRead())
return false;
@@ -432,7 +451,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 6:
- keys = reader.readCollection("keys", MessageCollectionItemType.MSG);
+ futId = reader.readIgniteUuid("futId");
if (!reader.isLastRead())
return false;
@@ -440,7 +459,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 7:
- miniId = reader.readIgniteUuid("miniId");
+ keys = reader.readCollection("keys", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
return false;
@@ -448,7 +467,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 8:
- readThrough = reader.readBoolean("readThrough");
+ miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
return false;
@@ -456,7 +475,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 9:
- reload = reader.readBoolean("reload");
+ partIds = reader.readCollection("partIds", MessageCollectionItemType.INT);
if (!reader.isLastRead())
return false;
@@ -464,7 +483,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 10:
- skipVals = reader.readBoolean("skipVals");
+ readThrough = reader.readBoolean("readThrough");
if (!reader.isLastRead())
return false;
@@ -472,7 +491,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 11:
- subjId = reader.readUuid("subjId");
+ reload = reader.readBoolean("reload");
if (!reader.isLastRead())
return false;
@@ -480,7 +499,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 12:
- taskNameHash = reader.readInt("taskNameHash");
+ skipVals = reader.readBoolean("skipVals");
if (!reader.isLastRead())
return false;
@@ -488,7 +507,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 13:
- topVer = reader.readMessage("topVer");
+ subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
return false;
@@ -496,7 +515,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 14:
- ver = reader.readMessage("ver");
+ taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
return false;
@@ -504,7 +523,15 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
reader.incrementState();
case 15:
- partIds = reader.readCollection("partIds", MessageCollectionItemType.INT);
+ topVer = reader.readMessage("topVer");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 16:
+ ver = reader.readMessage("ver");
if (!reader.isLastRead())
return false;
@@ -523,7 +550,7 @@ public class GridNearGetRequest extends GridCacheMessage implements GridCacheDep
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 16;
+ return 17;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
index 7c98602..491b4ec 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
@@ -148,6 +148,9 @@ public final class GridNearLockFuture extends GridCompoundIdentityFuture<Boolean
@GridToStringExclude
private List<GridDistributedCacheEntry> entries;
+ /** TTL for create operation. */
+ private long createTtl;
+
/** TTL for read operation. */
private long accessTtl;
@@ -168,6 +171,7 @@ public final class GridNearLockFuture extends GridCompoundIdentityFuture<Boolean
* @param read Read flag.
* @param retval Flag to return value or not.
* @param timeout Lock acquisition timeout.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param filter Filter.
* @param skipStore skipStore
@@ -180,6 +184,7 @@ public final class GridNearLockFuture extends GridCompoundIdentityFuture<Boolean
boolean read,
boolean retval,
long timeout,
+ long createTtl,
long accessTtl,
CacheEntryPredicate[] filter,
boolean skipStore,
@@ -195,6 +200,7 @@ public final class GridNearLockFuture extends GridCompoundIdentityFuture<Boolean
this.read = read;
this.retval = retval;
this.timeout = timeout;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.filter = filter;
this.skipStore = skipStore;
@@ -1054,6 +1060,7 @@ public final class GridNearLockFuture extends GridCompoundIdentityFuture<Boolean
inTx() && tx.syncMode() == FULL_SYNC,
inTx() ? tx.subjectId() : null,
inTx() ? tx.taskNameHash() : 0,
+ read ? createTtl : -1L,
read ? accessTtl : -1L,
skipStore,
keepBinary,
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockRequest.java
index 2e8cd6e..9e12153 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockRequest.java
@@ -80,6 +80,9 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
/** Sync commit flag. */
private boolean syncCommit;
+ /** TTL for create operation. */
+ private long createTtl;
+
/** TTL for read operation. */
private long accessTtl;
@@ -116,6 +119,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
* @param syncCommit Synchronous commit flag.
* @param subjId Subject ID.
* @param taskNameHash Task name hash code.
+ * @param createTtl TTL for create operation.
* @param accessTtl TTL for read operation.
* @param skipStore Skip store flag.
* @param firstClientReq {@code True} if first lock request for lock operation sent from client node.
@@ -141,6 +145,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
boolean syncCommit,
@Nullable UUID subjId,
int taskNameHash,
+ long createTtl,
long accessTtl,
boolean skipStore,
boolean keepBinary,
@@ -174,6 +179,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
this.syncCommit = syncCommit;
this.subjId = subjId;
this.taskNameHash = taskNameHash;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.retVal = retVal;
this.firstClientReq = firstClientReq;
@@ -312,6 +318,13 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
}
/**
+ * @return New TTL to set after entry is created, -1 to leave unchanged.
+ */
+ public long createTtl() {
+ return createTtl;
+ }
+
+ /**
* @return TTL for read operation.
*/
public long accessTtl() {
@@ -368,84 +381,90 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
writer.incrementState();
case 21:
- if (!writer.writeObjectArray("dhtVers", dhtVers, MessageCollectionItemType.MSG))
+ if (!writer.writeLong("createTtl", createTtl))
return false;
writer.incrementState();
case 22:
- if (!writer.writeObjectArray("filter", filter, MessageCollectionItemType.MSG))
+ if (!writer.writeObjectArray("dhtVers", dhtVers, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
case 23:
- if (!writer.writeBoolean("firstClientReq", firstClientReq))
+ if (!writer.writeObjectArray("filter", filter, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
case 24:
- if (!writer.writeBoolean("hasTransforms", hasTransforms))
+ if (!writer.writeBoolean("firstClientReq", firstClientReq))
return false;
writer.incrementState();
case 25:
- if (!writer.writeBoolean("implicitSingleTx", implicitSingleTx))
+ if (!writer.writeBoolean("hasTransforms", hasTransforms))
return false;
writer.incrementState();
case 26:
- if (!writer.writeBoolean("implicitTx", implicitTx))
+ if (!writer.writeBoolean("implicitSingleTx", implicitSingleTx))
return false;
writer.incrementState();
case 27:
- if (!writer.writeIgniteUuid("miniId", miniId))
+ if (!writer.writeBoolean("implicitTx", implicitTx))
return false;
writer.incrementState();
case 28:
- if (!writer.writeBoolean("onePhaseCommit", onePhaseCommit))
+ if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
case 29:
- if (!writer.writeBoolean("retVal", retVal))
+ if (!writer.writeBoolean("onePhaseCommit", onePhaseCommit))
return false;
writer.incrementState();
case 30:
- if (!writer.writeUuid("subjId", subjId))
+ if (!writer.writeBoolean("retVal", retVal))
return false;
writer.incrementState();
case 31:
- if (!writer.writeBoolean("syncCommit", syncCommit))
+ if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
case 32:
- if (!writer.writeInt("taskNameHash", taskNameHash))
+ if (!writer.writeBoolean("syncCommit", syncCommit))
return false;
writer.incrementState();
case 33:
- if (!writer.writeMessage("topVer", topVer))
+ if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
case 34:
+ if (!writer.writeMessage("topVer", topVer))
+ return false;
+
+ writer.incrementState();
+
+ case 35:
if (!writer.writeCollection("partIds", partIds, MessageCollectionItemType.INT))
return false;
@@ -476,7 +495,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 21:
- dhtVers = reader.readObjectArray("dhtVers", MessageCollectionItemType.MSG, GridCacheVersion.class);
+ createTtl = reader.readLong("createTtl");
if (!reader.isLastRead())
return false;
@@ -484,7 +503,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 22:
- filter = reader.readObjectArray("filter", MessageCollectionItemType.MSG, CacheEntryPredicate.class);
+ dhtVers = reader.readObjectArray("dhtVers", MessageCollectionItemType.MSG, GridCacheVersion.class);
if (!reader.isLastRead())
return false;
@@ -492,7 +511,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 23:
- firstClientReq = reader.readBoolean("firstClientReq");
+ filter = reader.readObjectArray("filter", MessageCollectionItemType.MSG, CacheEntryPredicate.class);
if (!reader.isLastRead())
return false;
@@ -500,7 +519,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 24:
- hasTransforms = reader.readBoolean("hasTransforms");
+ firstClientReq = reader.readBoolean("firstClientReq");
if (!reader.isLastRead())
return false;
@@ -508,7 +527,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 25:
- implicitSingleTx = reader.readBoolean("implicitSingleTx");
+ hasTransforms = reader.readBoolean("hasTransforms");
if (!reader.isLastRead())
return false;
@@ -516,7 +535,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 26:
- implicitTx = reader.readBoolean("implicitTx");
+ implicitSingleTx = reader.readBoolean("implicitSingleTx");
if (!reader.isLastRead())
return false;
@@ -524,7 +543,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 27:
- miniId = reader.readIgniteUuid("miniId");
+ implicitTx = reader.readBoolean("implicitTx");
if (!reader.isLastRead())
return false;
@@ -532,7 +551,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 28:
- onePhaseCommit = reader.readBoolean("onePhaseCommit");
+ miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
return false;
@@ -540,7 +559,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 29:
- retVal = reader.readBoolean("retVal");
+ onePhaseCommit = reader.readBoolean("onePhaseCommit");
if (!reader.isLastRead())
return false;
@@ -548,7 +567,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 30:
- subjId = reader.readUuid("subjId");
+ retVal = reader.readBoolean("retVal");
if (!reader.isLastRead())
return false;
@@ -556,7 +575,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 31:
- syncCommit = reader.readBoolean("syncCommit");
+ subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
return false;
@@ -564,7 +583,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 32:
- taskNameHash = reader.readInt("taskNameHash");
+ syncCommit = reader.readBoolean("syncCommit");
if (!reader.isLastRead())
return false;
@@ -572,7 +591,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 33:
- topVer = reader.readMessage("topVer");
+ taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
return false;
@@ -580,6 +599,14 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
reader.incrementState();
case 34:
+ topVer = reader.readMessage("topVer");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 35:
partIds = reader.readCollection("partIds", MessageCollectionItemType.INT);
if (!reader.isLastRead())
@@ -599,7 +626,7 @@ public class GridNearLockRequest extends GridDistributedLockRequest {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 35;
+ return 36;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java
index 7fc2b1e..8fe33d8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java
@@ -80,6 +80,9 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
private int taskNameHash;
/** TTL for read operation. */
+ private long createTtl;
+
+ /** TTL for read operation. */
private long accessTtl;
/**
@@ -99,6 +102,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
* @param topVer Topology version.
* @param subjId Subject ID.
* @param taskNameHash Task name hash.
+ * @param createTtl New TTL to set after entry is created, -1 to leave unchanged.
* @param accessTtl New TTL to set after entry is accessed, -1 to leave unchanged.
* @param addReader Add reader flag.
* @param needVer {@code True} if entry version is needed.
@@ -112,6 +116,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
@NotNull AffinityTopologyVersion topVer,
UUID subjId,
int taskNameHash,
+ long createTtl,
long accessTtl,
boolean skipVals,
boolean addReader,
@@ -127,6 +132,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
this.topVer = topVer;
this.subjId = subjId;
this.taskNameHash = taskNameHash;
+ this.createTtl = createTtl;
this.accessTtl = accessTtl;
this.addDepInfo = addDepInfo;
@@ -181,6 +187,13 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
}
/**
+ * @return New TTL to set after entry is created, -1 to leave unchanged.
+ */
+ public long createTtl() {
+ return createTtl;
+ }
+
+ /**
* @return New TTL to set after entry is accessed, -1 to leave unchanged.
*/
public long accessTtl() {
@@ -266,7 +279,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 4:
- flags = reader.readByte("flags");
+ createTtl = reader.readLong("createTtl");
if (!reader.isLastRead())
return false;
@@ -274,7 +287,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 5:
- futId = reader.readLong("futId");
+ flags = reader.readByte("flags");
if (!reader.isLastRead())
return false;
@@ -282,7 +295,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 6:
- key = reader.readMessage("key");
+ futId = reader.readLong("futId");
if (!reader.isLastRead())
return false;
@@ -290,7 +303,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 7:
- subjId = reader.readUuid("subjId");
+ key = reader.readMessage("key");
if (!reader.isLastRead())
return false;
@@ -298,7 +311,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 8:
- taskNameHash = reader.readInt("taskNameHash");
+ partId = reader.readInt("partId", -1);
if (!reader.isLastRead())
return false;
@@ -306,7 +319,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 9:
- topVer = reader.readMessage("topVer");
+ subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
return false;
@@ -314,7 +327,15 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
reader.incrementState();
case 10:
- partId = reader.readInt("partId", -1);
+ taskNameHash = reader.readInt("taskNameHash");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 11:
+ topVer = reader.readMessage("topVer");
if (!reader.isLastRead())
return false;
@@ -348,43 +369,49 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
writer.incrementState();
case 4:
- if (!writer.writeByte("flags", flags))
+ if (!writer.writeLong("createTtl", createTtl))
return false;
writer.incrementState();
case 5:
- if (!writer.writeLong("futId", futId))
+ if (!writer.writeByte("flags", flags))
return false;
writer.incrementState();
case 6:
- if (!writer.writeMessage("key", key))
+ if (!writer.writeLong("futId", futId))
return false;
writer.incrementState();
case 7:
- if (!writer.writeUuid("subjId", subjId))
+ if (!writer.writeMessage("key", key))
return false;
writer.incrementState();
case 8:
- if (!writer.writeInt("taskNameHash", taskNameHash))
+ if (!writer.writeInt("partId", partId))
return false;
writer.incrementState();
case 9:
- if (!writer.writeMessage("topVer", topVer))
+ if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
case 10:
- if (!writer.writeInt("partId", partId))
+ if (!writer.writeInt("taskNameHash", taskNameHash))
+ return false;
+
+ writer.incrementState();
+
+ case 11:
+ if (!writer.writeMessage("topVer", topVer))
return false;
writer.incrementState();
@@ -406,7 +433,7 @@ public class GridNearSingleGetRequest extends GridCacheMessage implements GridCa
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 11;
+ return 12;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
index 7ac3295..b3eb755 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
@@ -445,6 +445,7 @@ public class GridNearTransactionalCache<K, V> extends GridNearCacheAdapter<K, V>
boolean isRead,
boolean retval,
TransactionIsolation isolation,
+ long createTtl,
long accessTtl
) {
CacheOperationContext opCtx = ctx.operationContextPerCall();
@@ -455,6 +456,7 @@ public class GridNearTransactionalCache<K, V> extends GridNearCacheAdapter<K, V>
isRead,
retval,
timeout,
+ createTtl,
accessTtl,
CU.empty0(),
opCtx != null && opCtx.skipStore(),
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index ed37059..67518ef 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -329,15 +329,20 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
final boolean skipVals,
final boolean needVer,
boolean keepBinary,
+ final ExpiryPolicy expiryPlc,
final GridInClosure3<KeyCacheObject, Object, GridCacheVersion> c
) {
+ IgniteCacheExpiryPolicy expiryPlc0 = optimistic() ?
+ accessPolicy(cacheCtx, keys) :
+ cacheCtx.cache().expiryPolicy(expiryPlc);
+
if (cacheCtx.isNear()) {
return cacheCtx.nearTx().txLoadAsync(this,
topVer,
keys,
readThrough,
/*deserializeBinary*/false,
- accessPolicy(cacheCtx, keys),
+ expiryPlc0,
skipVals,
needVer).chain(new C1<IgniteInternalFuture<Map<Object, Object>>, Void>() {
@Override public Void apply(IgniteInternalFuture<Map<Object, Object>> f) {
@@ -368,7 +373,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
CU.subjectId(this, cctx),
resolveTaskName(),
/*deserializeBinary*/false,
- accessPolicy(cacheCtx, keys),
+ expiryPlc0,
skipVals,
/*can remap*/true,
needVer,
@@ -399,7 +404,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
CU.subjectId(this, cctx),
resolveTaskName(),
/*deserializeBinary*/false,
- accessPolicy(cacheCtx, keys),
+ expiryPlc0,
skipVals,
/*can remap*/true,
needVer,
@@ -433,6 +438,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
skipVals,
keepBinary,
needVer,
+ expiryPlc,
c);
}
}
@@ -1163,6 +1169,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
* @param keys Keys.
* @param retval Return value flag.
* @param read Read flag.
+ * @param accessTtl Create ttl.
* @param accessTtl Access ttl.
* @param <K> Key type.
* @param skipStore Skip store flag.
@@ -1173,6 +1180,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
final Collection<? extends K> keys,
boolean retval,
boolean read,
+ long createTtl,
long accessTtl,
boolean skipStore,
boolean keepBinary) {
@@ -1207,6 +1215,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
read,
retval,
isolation,
+ createTtl,
accessTtl,
CU.empty0(),
skipStore,
@@ -1305,6 +1314,8 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
/** {@inheritDoc} */
@Override protected IgniteCacheExpiryPolicy accessPolicy(GridCacheContext cacheCtx, Collection<KeyCacheObject> keys) {
+ assert optimistic();
+
if (accessMap != null) {
for (Map.Entry<IgniteTxKey, IgniteCacheExpiryPolicy> e : accessMap.entrySet()) {
if (e.getKey().cacheId() == cacheCtx.cacheId() && keys.contains(e.getKey().key()))
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalCache.java
index 16a35d3..5b44d75 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalCache.java
@@ -118,6 +118,7 @@ public class GridLocalCache<K, V> extends GridCacheAdapter<K, V> {
boolean retval,
TransactionIsolation isolation,
boolean invalidate,
+ long createTtl,
long accessTtl) {
return lockAllAsync(keys, timeout, tx, CU.empty0());
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
index ad818a6..ee4f7a6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
@@ -1547,6 +1547,7 @@ public class GridLocalAtomicCache<K, V> extends GridLocalCache<K, V> {
boolean retval,
TransactionIsolation isolation,
boolean invalidate,
+ long createTtl,
long accessTtl) {
return new GridFinishedFuture<>(new UnsupportedOperationException("Locks are not supported for " +
"CacheAtomicityMode.ATOMIC mode (use CacheAtomicityMode.TRANSACTIONAL instead)"));
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/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 f05d90d..a1c1123 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
@@ -400,6 +400,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
boolean skipVals,
boolean needVer,
boolean keepBinary,
+ final ExpiryPolicy expiryPlc,
final GridInClosure3<KeyCacheObject, Object, GridCacheVersion> c
) {
assert cacheCtx.isLocal() : cacheCtx.name();
@@ -412,7 +413,9 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
}
try {
- IgniteCacheExpiryPolicy expiryPlc = accessPolicy(cacheCtx, keys);
+ IgniteCacheExpiryPolicy expiryPlc0 = optimistic() ?
+ accessPolicy(cacheCtx, keys) :
+ cacheCtx.cache().expiryPolicy(expiryPlc);
Map<KeyCacheObject, GridCacheVersion> misses = null;
@@ -437,7 +440,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
CU.subjectId(this, cctx),
null,
resolveTaskName(),
- expiryPlc,
+ expiryPlc0,
txEntry == null ? keepBinary : txEntry.keepBinary(),
null);
@@ -481,6 +484,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
T2<CacheObject, GridCacheVersion> verVal = entry.versionedValue(cacheVal,
ver,
null,
+ null,
null);
if (log.isDebugEnabled()) {
@@ -1446,6 +1450,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
* @param skipVals Skip values flag.
* @param keepCacheObjects Keep cache objects flag.
* @param skipStore Skip store flag.
+ * @param expiryPlc Expiry policy.
* @return Loaded key-value pairs.
*/
private <K, V> IgniteInternalFuture<Map<K, V>> checkMissed(
@@ -1457,7 +1462,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
final boolean skipVals,
final boolean keepCacheObjects,
final boolean skipStore,
- final boolean needVer
+ final boolean needVer,
+ final ExpiryPolicy expiryPlc
) {
if (log.isDebugEnabled())
@@ -1486,6 +1492,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
skipVals,
needReadVer,
!deserializeBinary,
+ expiryPlc,
new GridInClosure3<KeyCacheObject, Object, GridCacheVersion>() {
@Override public void apply(KeyCacheObject key, Object val, GridCacheVersion loadVer) {
if (isRollbackOnly()) {
@@ -1610,6 +1617,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
expiryPlc = cacheCtx.expiry();
long accessTtl = expiryPlc != null ? CU.toTtl(expiryPlc.getExpiryForAccess()) : CU.TTL_NOT_CHANGED;
+ long createTtl = expiryPlc != null ? CU.toTtl(expiryPlc.getExpiryForCreation()) : CU.TTL_NOT_CHANGED;
long timeout = remainingTime();
@@ -1623,8 +1631,11 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
true,
isolation,
isInvalidate(),
+ createTtl,
accessTtl);
+ final ExpiryPolicy expiryPlc0 = expiryPlc;
+
PLC2<Map<K, V>> plc2 = new PLC2<Map<K, V>>() {
@Override public IgniteInternalFuture<Map<K, V>> postLock() throws IgniteCheckedException {
if (log.isDebugEnabled())
@@ -1747,7 +1758,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
skipVals,
keepCacheObjects,
skipStore,
- needVer);
+ needVer,
+ expiryPlc0);
}
return new GridFinishedFuture<>(Collections.<K, V>emptyMap());
@@ -1820,7 +1832,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
skipVals,
keepCacheObjects,
skipStore,
- needVer);
+ needVer,
+ expiryPlc);
}
return new GridFinishedFuture<>(retMap);
@@ -2027,7 +2040,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
hasFilters,
/*read through*/(entryProcessor != null || cacheCtx.config().isLoadPreviousValue()) && !skipStore,
retval,
- keepBinary);
+ keepBinary,
+ expiryPlc);
}
return new GridFinishedFuture<>();
@@ -2196,7 +2210,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
hasFilters,
/*read through*/(invokeMap != null || cacheCtx.config().isLoadPreviousValue()) && !skipStore,
retval,
- keepBinary);
+ keepBinary,
+ expiryPlc);
}
return new GridFinishedFuture<>();
@@ -2216,6 +2231,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
* @param hasFilters {@code True} if filters not empty.
* @param readThrough Read through flag.
* @param retval Return value flag.
+ * @param expiryPlc Expiry policy.
* @return Load future.
*/
private IgniteInternalFuture<Void> loadMissing(
@@ -2229,7 +2245,8 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
final boolean hasFilters,
final boolean readThrough,
final boolean retval,
- final boolean keepBinary) {
+ final boolean keepBinary,
+ final ExpiryPolicy expiryPlc) {
GridInClosure3<KeyCacheObject, Object, GridCacheVersion> c =
new GridInClosure3<KeyCacheObject, Object, GridCacheVersion>() {
@Override public void apply(KeyCacheObject key,
@@ -2303,6 +2320,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
/*skipVals*/singleRmv,
needReadVer,
keepBinary,
+ expiryPlc,
c);
}
@@ -2966,6 +2984,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
retval,
isolation,
isInvalidate(),
+ -1L,
-1L);
PLC1<GridCacheReturn> plc1 = new PLC1<GridCacheReturn>(ret) {
@@ -3144,6 +3163,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
retval,
isolation,
isInvalidate(),
+ -1L,
-1L);
PLC1<GridCacheReturn> plc1 = new PLC1<GridCacheReturn>(ret) {
@@ -3438,6 +3458,7 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter implements Ig
retval,
isolation,
isInvalidate(),
+ -1L,
-1L);
PLC1<GridCacheReturn> plc1 = new PLC1<GridCacheReturn>(ret) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalEx.java
index 9fb3558..f5687a0 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalEx.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.transactions;
import java.util.Collection;
import java.util.Map;
import javax.cache.Cache;
+import javax.cache.expiry.ExpiryPolicy;
import javax.cache.processor.EntryProcessor;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.IgniteInternalFuture;
@@ -181,6 +182,7 @@ public interface IgniteTxLocalEx extends IgniteInternalTx {
* @param skipVals Skip values flag.
* @param needVer If {@code true} version is required for loaded values.
* @param c Closure to be applied for loaded values.
+ * @param expiryPlc Expiry policy.
* @return Future with {@code True} value if loading took place.
*/
public IgniteInternalFuture<Void> loadMissing(
@@ -192,5 +194,6 @@ public interface IgniteTxLocalEx extends IgniteInternalTx {
boolean skipVals,
boolean needVer,
boolean keepBinary,
+ final ExpiryPolicy expiryPlc,
GridInClosure3<KeyCacheObject, Object, GridCacheVersion> c);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index 8db68b4..2954bdb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@ -689,7 +689,8 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
@Override public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs) {
+ @Nullable ReaderArguments readerArgs,
+ IgniteCacheExpiryPolicy loadExpiryPlc) {
assert false;
return null;
[40/50] [abbrv] ignite git commit: .NET: Extract exceptions tests in
CacheStoreTest and ignore due to IGNITE-4657
Posted by vo...@apache.org.
.NET: Extract exceptions tests in CacheStoreTest and ignore due to IGNITE-4657
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/296bc413
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/296bc413
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/296bc413
Branch: refs/heads/ignite-1.9
Commit: 296bc413fcc4ea5a541d027788fa458bfa480be7
Parents: 96b0f7f
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Mon Feb 6 18:07:28 2017 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Mon Feb 6 18:07:28 2017 +0300
----------------------------------------------------------------------
.../Cache/Store/CacheStoreTest.cs | 30 ++++++++++++++++++--
1 file changed, 28 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/296bc413/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
index d39ccde..2a235aa 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
@@ -296,12 +296,38 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val", cache.Get(1));
Assert.AreEqual(1, cache.GetSize());
+ }
+
+ [Test]
+ public void TestExceptions()
+ {
+ var cache = GetCache();
+
+ cache.Put(1, "val");
- // Test errors
CacheTestStore.ThrowError = true;
CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Put(-2, "fail")).InnerException);
- cache.LocalEvict(new[] { 1 });
+ cache.LocalEvict(new[] {1});
+ CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Get(1)).InnerException);
+
+ CacheTestStore.ThrowError = false;
+
+ cache.Remove(1);
+ }
+
+ [Test]
+ [Ignore("IGNITE-4657")]
+ public void TestExceptionsNoRemove()
+ {
+ var cache = GetCache();
+
+ cache.Put(1, "val");
+
+ CacheTestStore.ThrowError = true;
+ CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Put(-2, "fail")).InnerException);
+
+ cache.LocalEvict(new[] {1});
CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Get(1)).InnerException);
}
[02/50] [abbrv] ignite git commit: Merge branch 'ignite-1.8.2' into
ignite-1.8.3
Posted by vo...@apache.org.
Merge branch 'ignite-1.8.2' into ignite-1.8.3
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/121f034e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/121f034e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/121f034e
Branch: refs/heads/ignite-1.9
Commit: 121f034e5739dcc7dd9c9577c9a437acaf710a19
Parents: 072b9c2 da5b68c
Author: devozerov <vo...@gridgain.com>
Authored: Thu Jan 5 12:00:49 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 12:00:49 2017 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/GridTopic.java | 8 +-
.../ignite/internal/util/nio/GridNioServer.java | 159 ++++++++++++++++---
.../communication/tcp/TcpCommunicationSpi.java | 22 +--
.../tcp/TcpCommunicationSpiMBean.java | 5 +-
...mmunicationBalancePairedConnectionsTest.java | 28 ++++
.../IgniteCommunicationBalanceTest.java | 25 ++-
...cMessageRecoveryNoPairedConnectionsTest.java | 47 ------
...micMessageRecoveryPairedConnectionsTest.java | 47 ++++++
.../ignite/testsuites/IgniteCacheTestSuite.java | 6 +-
.../yardstick/cache/IgniteIoTestBenchmark.java | 73 ---------
10 files changed, 255 insertions(+), 165 deletions(-)
----------------------------------------------------------------------
[28/50] [abbrv] ignite git commit: Minor javadoc fix
Posted by vo...@apache.org.
Minor javadoc fix
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/83ad0943
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/83ad0943
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/83ad0943
Branch: refs/heads/ignite-1.9
Commit: 83ad0943edf6a0e07d1b07c889492bce4932f9d1
Parents: 898fa15
Author: Anton Vinogradov <av...@apache.org>
Authored: Fri Jan 27 17:44:57 2017 +0300
Committer: Anton Vinogradov <av...@apache.org>
Committed: Fri Jan 27 17:44:57 2017 +0300
----------------------------------------------------------------------
.../processors/cache/distributed/near/GridNearTxLocal.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/83ad0943/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index ae9edcd..5aa091d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -1169,7 +1169,7 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
* @param keys Keys.
* @param retval Return value flag.
* @param read Read flag.
- * @param accessTtl Create ttl.
+ * @param createTtl Create ttl.
* @param accessTtl Access ttl.
* @param <K> Key type.
* @param skipStore Skip store flag.
[34/50] [abbrv] ignite git commit: ignite-4429 Deadlock in
IgniteAtomicSequence when used inside transaction
Posted by vo...@apache.org.
ignite-4429 Deadlock in IgniteAtomicSequence when used inside transaction
(cherry picked from commit 9905ff3)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/607f4eb7
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/607f4eb7
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/607f4eb7
Branch: refs/heads/ignite-1.9
Commit: 607f4eb7cea1e7392fac584772b3b86851eaf57c
Parents: f505e20
Author: Aleksei Scherbakov <al...@gmail.com>
Authored: Thu Dec 15 12:31:56 2016 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Feb 1 17:33:03 2017 +0300
----------------------------------------------------------------------
.../GridCacheAtomicSequenceImpl.java | 12 +-
...achePartitionedAtomicSequenceTxSelfTest.java | 169 +++++++++++++++++++
.../IgniteCacheDataStructuresSelfTestSuite.java | 2 +
3 files changed, 181 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/607f4eb7/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheAtomicSequenceImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheAtomicSequenceImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheAtomicSequenceImpl.java
index 4f660b6..754d8f5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheAtomicSequenceImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheAtomicSequenceImpl.java
@@ -29,6 +29,7 @@ import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
import org.apache.ignite.internal.GridKernalContext;
import org.apache.ignite.internal.IgniteInternalFuture;
@@ -253,8 +254,15 @@ public final class GridCacheAtomicSequenceImpl implements GridCacheAtomicSequenc
while (true) {
if (updateGuard.compareAndSet(false, true)) {
try {
- // This call must be outside lock.
- return CU.outTx(updateCall, ctx);
+ try {
+ return updateCall.call();
+ }
+ catch (IgniteCheckedException | IgniteException | IllegalStateException e) {
+ throw e;
+ }
+ catch (Exception e) {
+ throw new IgniteCheckedException(e);
+ }
}
finally {
lock.lock();
http://git-wip-us.apache.org/repos/asf/ignite/blob/607f4eb7/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedAtomicSequenceTxSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedAtomicSequenceTxSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedAtomicSequenceTxSelfTest.java
new file mode 100644
index 0000000..d04a68a
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/partitioned/GridCachePartitionedAtomicSequenceTxSelfTest.java
@@ -0,0 +1,169 @@
+/*
+ * 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.concurrent.CountDownLatch;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteAtomicSequence;
+import org.apache.ignite.IgniteCache;
+import org.apache.ignite.configuration.AtomicConfiguration;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.lang.IgniteRunnable;
+import org.apache.ignite.resources.IgniteInstanceResource;
+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.junits.common.GridCommonAbstractTest;
+import org.apache.ignite.transactions.Transaction;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
+
+/**
+ * Tests {@link IgniteAtomicSequence} operations inside started user transaction.
+ */
+public class GridCachePartitionedAtomicSequenceTxSelfTest extends GridCommonAbstractTest {
+ /** Number of threads. */
+ private static final int THREAD_NUM = 8;
+
+ /** Sequence cache size. */
+ private static final int SEQ_CACHE_SIZE = 10;
+
+ /** Iterations. */
+ private static final int ITERATIONS = 100;
+
+ /** Sequence name. */
+ private static final String SEQ_NAME = "seq";
+
+ /** Latch. */
+ private static CountDownLatch latch;
+
+ /** */
+ private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ TcpDiscoverySpi spi = new TcpDiscoverySpi();
+
+ spi.setIpFinder(ipFinder);
+
+ cfg.setDiscoverySpi(spi);
+
+ cfg.setPublicThreadPoolSize(THREAD_NUM);
+
+ AtomicConfiguration atomicCfg = atomicConfiguration();
+
+ assertNotNull(atomicCfg);
+
+ cfg.setAtomicConfiguration(atomicCfg);
+
+ return cfg;
+ }
+
+ /**
+ * @return Atomic config for test.
+ */
+ protected AtomicConfiguration atomicConfiguration() {
+ AtomicConfiguration cfg = new AtomicConfiguration();
+
+ cfg.setBackups(1);
+ cfg.setAtomicSequenceReserveSize(SEQ_CACHE_SIZE);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void beforeTest() throws Exception {
+ latch = new CountDownLatch(THREAD_NUM);
+
+ startGridsMultiThreaded(1);
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ stopAllGrids();
+ }
+
+ /**
+ * Tests sequence calls inside transactions.
+ *
+ * @throws Exception If failed.
+ */
+ public void testTransactionIncrement() throws Exception {
+ ignite(0).atomicSequence(SEQ_NAME, 0, true);
+
+ for (int i = 0; i < THREAD_NUM; i++) {
+ multithreaded(new Runnable() {
+ @Override public void run() {
+ ignite(0).compute().run(new IncrementClosure());
+
+ }
+ }, THREAD_NUM);
+ }
+ }
+
+ /**
+ * Tests isolation of system and user transactions.
+ */
+ public void testIsolation() {
+ IgniteAtomicSequence seq = ignite(0).atomicSequence(SEQ_NAME, 0, true);
+
+ CacheConfiguration<Object, Object> ccfg = new CacheConfiguration<>();
+ ccfg.setAtomicityMode(TRANSACTIONAL);
+
+ IgniteCache<Object, Object> cache = ignite(0).getOrCreateCache(ccfg);
+
+ try (Transaction tx = ignite(0).transactions().txStart()) {
+ seq.getAndIncrement();
+
+ cache.put(1, 1);
+
+ tx.rollback();
+ }
+
+ assertEquals(0, cache.size());
+ assertEquals(new Long(1L), U.field(seq, "locVal"));
+ assertEquals(new Long(SEQ_CACHE_SIZE - 1), U.field(seq, "upBound"));
+ }
+
+ /**
+ * Closure which does sequence increment.
+ */
+ private static class IncrementClosure implements IgniteRunnable {
+ /** Ignite instance. */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /** {@inheritDoc} */
+ @Override public void run() {
+ IgniteAtomicSequence seq = ignite.atomicSequence(SEQ_NAME, 0, false);
+
+ latch.countDown();
+
+ U.awaitQuiet(latch);
+
+ for (int i = 0; i < ITERATIONS; i++)
+ try (Transaction ignored = ignite.transactions().txStart()) {
+ seq.incrementAndGet();
+ }
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/607f4eb7/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 45a49bf..267128b 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
@@ -46,6 +46,7 @@ import org.apache.ignite.internal.processors.cache.datastructures.partitioned.Gr
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicQueueRotativeMultiNodeTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicReferenceApiSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicSequenceMultiThreadedTest;
+import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicSequenceTxSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicSetFailoverSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicSetSelfTest;
import org.apache.ignite.internal.processors.cache.datastructures.partitioned.GridCachePartitionedAtomicStampedApiSelfTest;
@@ -168,6 +169,7 @@ public class IgniteCacheDataStructuresSelfTestSuite extends TestSuite {
suite.addTest(new TestSuite(IgniteReplicatedAtomicLongApiSelfTest.class));
suite.addTest(new TestSuite(GridCachePartitionedAtomicSequenceMultiThreadedTest.class));
+ suite.addTest(new TestSuite(GridCachePartitionedAtomicSequenceTxSelfTest.class));
suite.addTest(new TestSuite(GridCachePartitionedAtomicStampedApiSelfTest.class));
suite.addTest(new TestSuite(GridCacheReplicatedAtomicStampedApiSelfTest.class));
[46/50] [abbrv] ignite git commit: IGNITE-4688: Changed copyrights to
2017.
Posted by vo...@apache.org.
IGNITE-4688: Changed copyrights to 2017.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0a436659
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0a436659
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0a436659
Branch: refs/heads/ignite-1.9
Commit: 0a4366591df30bf9c6841cf487e92f9decac6059
Parents: 1fe33bc
Author: devozerov <vo...@gridgain.com>
Authored: Mon Feb 13 13:19:56 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Mon Feb 13 13:19:56 2017 +0300
----------------------------------------------------------------------
NOTICE | 2 +-
assembly/NOTICE_FABRIC | 2 +-
assembly/NOTICE_HADOOP | 2 +-
modules/core/src/main/java/META-INF/NOTICE | 2 +-
.../dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs | 2 +-
.../dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 2 +-
.../platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs | 2 +-
modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 2 +-
.../examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 2 +-
.../examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs | 2 +-
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/pom.xml | 2 +-
parent/pom.xml | 2 +-
14 files changed, 14 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/NOTICE
----------------------------------------------------------------------
diff --git a/NOTICE b/NOTICE
index 5ec3b0e..33e2479 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
Apache Ignite
-Copyright 2015 The Apache Software Foundation
+Copyright 2017 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/assembly/NOTICE_FABRIC
----------------------------------------------------------------------
diff --git a/assembly/NOTICE_FABRIC b/assembly/NOTICE_FABRIC
index 2e55768..c5e6f02 100644
--- a/assembly/NOTICE_FABRIC
+++ b/assembly/NOTICE_FABRIC
@@ -1,5 +1,5 @@
Apache Ignite
-Copyright 2015 The Apache Software Foundation
+Copyright 2017 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/assembly/NOTICE_HADOOP
----------------------------------------------------------------------
diff --git a/assembly/NOTICE_HADOOP b/assembly/NOTICE_HADOOP
index 5ec3b0e..33e2479 100644
--- a/assembly/NOTICE_HADOOP
+++ b/assembly/NOTICE_HADOOP
@@ -1,5 +1,5 @@
Apache Ignite
-Copyright 2015 The Apache Software Foundation
+Copyright 2017 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/modules/core/src/main/java/META-INF/NOTICE
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/META-INF/NOTICE b/modules/core/src/main/java/META-INF/NOTICE
index 5ec3b0e..33e2479 100644
--- a/modules/core/src/main/java/META-INF/NOTICE
+++ b/modules/core/src/main/java/META-INF/NOTICE
@@ -1,5 +1,5 @@
Apache Ignite
-Copyright 2015 The Apache Software Foundation
+Copyright 2017 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 91f79bd..a1d8aef 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 a8c4305..3994598 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
@@ -23,7 +23,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 7bf322f..d8bb169 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
index 76596da..446fe1e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
@@ -24,7 +24,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 8503026..41b6289 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 5834c57..396eeb6 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/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 230e9d8..0855afb 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -23,7 +23,7 @@ using System.Reflection;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
-[assembly: AssemblyCopyright("Copyright � 2015")]
+[assembly: AssemblyCopyright("Copyright � 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 3920e0a..e857a3b 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -158,7 +158,7 @@
<!--<td>-->
<!--<nobr>Ignite™ - Scalar DSL, ver. <strong>${project.version}</strong></nobr>-->
<!--<br>-->
- <!--<a target=_blank href="https://ignite.apache.org"><nobr>2015 Copyright © Apache Software Foundation</nobr></a>-->
+ <!--<a target=_blank href="https://ignite.apache.org"><nobr>2017 Copyright © Apache Software Foundation</nobr></a>-->
<!--</td>-->
<!--</tr>-->
<!--</table>-->
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index eb8a24c..807ccb8 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -143,7 +143,7 @@
<td>
<nobr>Ignite™ - Scalar DSL, ver. <strong>${project.version}</strong></nobr>
<br>
- <a target=_blank href="https://ignite.apache.org"><nobr>2015 Copyright © Apache Software Foundation</nobr></a>
+ <a target=_blank href="https://ignite.apache.org"><nobr>2017 Copyright © Apache Software Foundation</nobr></a>
</td>
</tr>
</table>
http://git-wip-us.apache.org/repos/asf/ignite/blob/0a436659/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index f766437..88532a7 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -464,7 +464,7 @@
<tbody style="padding: 0; margin: 0">
<tr style="padding: 0; margin: 0">
<td>
- <a target=_blank href="https://ignite.apache.org"><nobr>2015 Copyright © Apache Software Foundation</nobr></a>
+ <a target=_blank href="https://ignite.apache.org"><nobr>2017 Copyright © Apache Software Foundation</nobr></a>
</td>
</tr>
</tbody>
[37/50] [abbrv] ignite git commit: IGNITE-4537 - Filter possible
sensitive user data that might be set in system properties to send in update
notifier.
Posted by vo...@apache.org.
IGNITE-4537 - Filter possible sensitive user data that might be set in system properties to send in update notifier.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9c401b0d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9c401b0d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9c401b0d
Branch: refs/heads/ignite-1.9
Commit: 9c401b0dcfc6edb5cc83f6b35bc0d24db6f10347
Parents: 607f4eb
Author: dkarachentsev <dk...@gridgain.com>
Authored: Tue Jan 24 16:40:54 2017 +0300
Committer: dkarachentsev <dk...@gridgain.com>
Committed: Fri Feb 3 12:06:13 2017 +0300
----------------------------------------------------------------------
.../apache/ignite/IgniteSystemProperties.java | 32 ++++++++++++++++++++
.../processors/cluster/GridUpdateNotifier.java | 2 +-
2 files changed, 33 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/9c401b0d/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
index bf51c34..f027098 100644
--- a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
+++ b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
@@ -23,6 +23,7 @@ import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import javax.net.ssl.HostnameVerifier;
+import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.marshaller.optimized.OptimizedMarshaller;
import org.jetbrains.annotations.Nullable;
@@ -526,6 +527,15 @@ public final class IgniteSystemProperties {
*/
public static final String IGNITE_UNWRAP_BINARY_FOR_INDEXING_SPI = "IGNITE_UNWRAP_BINARY_FOR_INDEXING_SPI";
+ /** Returns true for system properties only avoiding sending sensitive information. */
+ private static final IgnitePredicate<Map.Entry<String, String>> PROPS_FILTER = new IgnitePredicate<Map.Entry<String, String>>() {
+ @Override public boolean apply(final Map.Entry<String, String> entry) {
+ final String key = entry.getKey();
+
+ return key.startsWith("java.") || key.startsWith("os.") || key.startsWith("user.");
+ }
+ };
+
/**
* Enforces singleton.
*/
@@ -699,4 +709,26 @@ public final class IgniteSystemProperties {
return sysProps;
}
+
+ /**
+ * Does the same as {@link #snapshot()} but filters out
+ * possible sensitive user data.
+ *
+ * @return Snapshot of system properties.
+ */
+ @SuppressWarnings("unchecked")
+ public static Properties safeSnapshot() {
+ final Properties props = snapshot();
+
+ final Iterator<Map.Entry<Object, Object>> iter = props.entrySet().iterator();
+
+ while (iter.hasNext()) {
+ final Map.Entry entry = iter.next();
+
+ if (!PROPS_FILTER.apply(entry))
+ iter.remove();
+ }
+
+ return props;
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/9c401b0d/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridUpdateNotifier.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridUpdateNotifier.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridUpdateNotifier.java
index 592fdd1..5b2edcd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridUpdateNotifier.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridUpdateNotifier.java
@@ -169,7 +169,7 @@ class GridUpdateNotifier {
StringWriter sw = new StringWriter();
try {
- IgniteSystemProperties.snapshot().store(new PrintWriter(sw), "");
+ IgniteSystemProperties.safeSnapshot().store(new PrintWriter(sw), "");
}
catch (IOException ignore) {
return null;
[19/50] [abbrv] ignite git commit: IGNITE-3699 (Backported from
master) CreatedExpiryPolicy doesn't work if entry is loaded from store
Posted by vo...@apache.org.
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyWithStoreAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyWithStoreAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyWithStoreAbstractTest.java
index 78c59ac..1f6ec2d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyWithStoreAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyWithStoreAbstractTest.java
@@ -17,6 +17,11 @@
package org.apache.ignite.internal.processors.cache.expiry;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
import javax.cache.configuration.Factory;
import javax.cache.expiry.Duration;
@@ -25,6 +30,7 @@ import javax.cache.integration.CompletionListenerFuture;
import javax.cache.processor.EntryProcessor;
import javax.cache.processor.MutableEntry;
import org.apache.ignite.IgniteCache;
+import org.apache.ignite.IgniteTransactions;
import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CachePeekMode;
import org.apache.ignite.cache.store.CacheStore;
@@ -36,6 +42,9 @@ import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
import org.apache.ignite.internal.processors.cache.IgniteCacheAbstractTest;
import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.transactions.Transaction;
+import org.apache.ignite.transactions.TransactionConcurrency;
+import org.apache.ignite.transactions.TransactionIsolation;
/**
*
@@ -174,6 +183,99 @@ public abstract class IgniteCacheExpiryPolicyWithStoreAbstractTest extends Ignit
}
/**
+ * @throws Exception If failed.
+ */
+ public void testGetReadThrough() throws Exception {
+ getReadThrough(false, null, null);
+ getReadThrough(true, null, null);
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ protected void getReadThrough(boolean withExcPlc,
+ TransactionConcurrency txConcurrency,
+ TransactionIsolation txIsolation) throws Exception {
+ IgniteCache<Integer, Integer> cache = jcache(0);
+
+ if (withExcPlc)
+ cache = cache.withExpiryPolicy(new ExpiryPolicy() {
+ @Override public Duration getExpiryForCreation() {
+ return new Duration(TimeUnit.MILLISECONDS, 501);
+ }
+
+ @Override public Duration getExpiryForAccess() {
+ return new Duration(TimeUnit.MILLISECONDS, 601);
+ }
+
+ @Override public Duration getExpiryForUpdate() {
+ return new Duration(TimeUnit.MILLISECONDS, 701);
+ }
+ });
+
+ Integer prim = primaryKeys(cache, 1, 1000).get(0);
+ Integer back = backupKeys(cache, 1, 1000).get(0);
+ Integer near = nearKeys(cache, 1, 1000).get(0);
+
+ Set<Integer> prims = new HashSet<>(primaryKeys(cache, 10, prim + 1));
+ Set<Integer> backs = new HashSet<>(backupKeys(cache, 10, back + 1));
+ Set<Integer> nears = new HashSet<>(nearKeys(cache, 10, near + 1));
+
+ Set<Integer> keys = new HashSet<>();
+
+ keys.add(prim);
+ keys.add(back);
+ keys.add(near);
+
+ keys.addAll(prims);
+ keys.addAll(backs);
+ keys.addAll(nears);
+
+ for (Integer key : keys)
+ storeMap.put(key, key);
+
+ IgniteTransactions transactions = grid(0).transactions();
+
+ Transaction tx = txConcurrency != null ? transactions.txStart(txConcurrency, txIsolation) : null;
+
+ try {
+ Collection<Integer> singleKeys = new HashSet<>();
+
+ singleKeys.add(prim);
+ singleKeys.add(back);
+ singleKeys.add(near);
+
+ assertEquals(3, singleKeys.size());
+
+ for (Integer key : singleKeys)
+ assertEquals(key, cache.get(key));
+
+ Map<Integer, Integer> res = new HashMap<>();
+
+ res.putAll(cache.getAll(prims));
+ res.putAll(cache.getAll(backs));
+ res.putAll(cache.getAll(nears));
+
+ assertEquals(30, res.size());
+
+ for (Map.Entry<Integer, Integer> e : res.entrySet())
+ assertEquals(e.getKey(), e.getValue());
+ }
+ finally {
+ if (tx != null)
+ tx.rollback();
+ }
+
+ for (Integer key : keys)
+ checkTtl(key, withExcPlc ? 501 : 500, true);
+
+ U.sleep(600);
+
+ for (Integer key : keys)
+ checkExpired(key);
+ }
+
+ /**
* @param key Key.
*/
private void checkExpired(Integer key) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/e832ef9c/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheTxExpiryPolicyWithStoreTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheTxExpiryPolicyWithStoreTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheTxExpiryPolicyWithStoreTest.java
index 4b9b61a..f5888f8 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheTxExpiryPolicyWithStoreTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheTxExpiryPolicyWithStoreTest.java
@@ -19,6 +19,8 @@ package org.apache.ignite.internal.processors.cache.expiry;
import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CacheMode;
+import org.apache.ignite.transactions.TransactionConcurrency;
+import org.apache.ignite.transactions.TransactionIsolation;
import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
import static org.apache.ignite.cache.CacheMode.PARTITIONED;
@@ -41,4 +43,23 @@ public class IgniteCacheTxExpiryPolicyWithStoreTest extends IgniteCacheExpiryPol
@Override protected CacheAtomicityMode atomicityMode() {
return TRANSACTIONAL;
}
+
+ /** {@inheritDoc} */
+ @Override public void testGetReadThrough() throws Exception {
+ super.testGetReadThrough();
+
+ getReadThrough(false, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.READ_COMMITTED);
+ getReadThrough(true, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.READ_COMMITTED);
+ getReadThrough(false, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.REPEATABLE_READ);
+ getReadThrough(true, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.REPEATABLE_READ);
+ getReadThrough(false, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.SERIALIZABLE);
+ getReadThrough(true, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.SERIALIZABLE);
+
+ getReadThrough(false, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.READ_COMMITTED);
+ getReadThrough(true, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.READ_COMMITTED);
+ getReadThrough(false, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.REPEATABLE_READ);
+ getReadThrough(true, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.REPEATABLE_READ);
+ getReadThrough(false, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.SERIALIZABLE);
+ getReadThrough(true, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.SERIALIZABLE);
+ }
}
\ No newline at end of file
[12/50] [abbrv] ignite git commit: Added cache.putAll benchmarks for
offheap cache.
Posted by vo...@apache.org.
Added cache.putAll benchmarks for offheap cache.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e04d83c4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e04d83c4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e04d83c4
Branch: refs/heads/ignite-1.9
Commit: e04d83c4911bbd3e18f03ee1e80a99cd49fae87f
Parents: 1820eb3
Author: sboikov <sb...@gridgain.com>
Authored: Wed Jan 11 18:15:53 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Jan 11 18:15:53 2017 +0300
----------------------------------------------------------------------
.../cache/IgnitePutAllOffHeapTxBenchmark.java | 30 --------------------
.../cache/IgnitePutAllTxOffHeapBenchmark.java | 30 ++++++++++++++++++++
2 files changed, 30 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e04d83c4/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
deleted file mode 100644
index 559f8e8..0000000
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllOffHeapTxBenchmark.java
+++ /dev/null
@@ -1,30 +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.yardstick.cache;
-
-import org.apache.ignite.IgniteCache;
-
-/**
- *
- */
-public class IgnitePutAllOffHeapTxBenchmark extends IgnitePutAllTxBenchmark {
- /** {@inheritDoc} */
- @Override protected IgniteCache<Integer, Object> cache() {
- return ignite().cache("tx-offheap");
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/e04d83c4/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllTxOffHeapBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllTxOffHeapBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllTxOffHeapBenchmark.java
new file mode 100644
index 0000000..1578b90
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutAllTxOffHeapBenchmark.java
@@ -0,0 +1,30 @@
+/*
+ * 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.yardstick.cache;
+
+import org.apache.ignite.IgniteCache;
+
+/**
+ *
+ */
+public class IgnitePutAllTxOffHeapBenchmark extends IgnitePutAllTxBenchmark {
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("tx-offheap");
+ }
+}
[44/50] [abbrv] ignite git commit: .NET: Extract exceptions tests in
CacheStoreTest and ignore due to IGNITE-4657
Posted by vo...@apache.org.
.NET: Extract exceptions tests in CacheStoreTest and ignore due to IGNITE-4657
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7f270405
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7f270405
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7f270405
Branch: refs/heads/ignite-1.9
Commit: 7f270405e3ab94938a9e46e301069825c7bc6fb0
Parents: dc24068
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Mon Feb 6 18:07:28 2017 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Thu Feb 9 13:03:59 2017 +0300
----------------------------------------------------------------------
.../Cache/Store/CacheStoreTest.cs | 30 ++++++++++++++++++--
1 file changed, 28 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/7f270405/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
index d39ccde..2a235aa 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Store/CacheStoreTest.cs
@@ -296,12 +296,38 @@ namespace Apache.Ignite.Core.Tests.Cache.Store
Assert.AreEqual("val", cache.Get(1));
Assert.AreEqual(1, cache.GetSize());
+ }
+
+ [Test]
+ public void TestExceptions()
+ {
+ var cache = GetCache();
+
+ cache.Put(1, "val");
- // Test errors
CacheTestStore.ThrowError = true;
CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Put(-2, "fail")).InnerException);
- cache.LocalEvict(new[] { 1 });
+ cache.LocalEvict(new[] {1});
+ CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Get(1)).InnerException);
+
+ CacheTestStore.ThrowError = false;
+
+ cache.Remove(1);
+ }
+
+ [Test]
+ [Ignore("IGNITE-4657")]
+ public void TestExceptionsNoRemove()
+ {
+ var cache = GetCache();
+
+ cache.Put(1, "val");
+
+ CacheTestStore.ThrowError = true;
+ CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Put(-2, "fail")).InnerException);
+
+ cache.LocalEvict(new[] {1});
CheckCustomStoreError(Assert.Throws<CacheStoreException>(() => cache.Get(1)).InnerException);
}
[13/50] [abbrv] ignite git commit: IGNITE-4550: Move service
deployment to certain test. This closes #1437.
Posted by vo...@apache.org.
IGNITE-4550: Move service deployment to certain test. This closes #1437.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/71a76c81
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/71a76c81
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/71a76c81
Branch: refs/heads/ignite-1.9
Commit: 71a76c81530d1aa38525fd78a90b065b6e19a6bb
Parents: f350578
Author: Andrey V. Mashenkov <an...@gmail.com>
Authored: Thu Jan 19 13:29:55 2017 +0300
Committer: Andrey V. Mashenkov <an...@gmail.com>
Committed: Thu Jan 19 15:21:03 2017 +0300
----------------------------------------------------------------------
.../cache/GridCacheAbstractFullApiSelfTest.java | 20 ++++++++------------
1 file changed, 8 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/71a76c81/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 b328960..1cfb330 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
@@ -64,6 +64,7 @@ import org.apache.ignite.cache.CachePeekMode;
import org.apache.ignite.cache.affinity.Affinity;
import org.apache.ignite.cache.query.QueryCursor;
import org.apache.ignite.cache.query.ScanQuery;
+import org.apache.ignite.cluster.ClusterGroup;
import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
@@ -294,18 +295,6 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
cacheCfgMap = null;
}
- // We won't deploy service unless non-client node is configured.
- for (int i = 0; i < gridCount(); i++) {
- Boolean clientMode = grid(i).configuration().isClientMode();
-
- if (clientMode != null && clientMode) // Can be null in multi jvm tests.
- continue;
-
- grid(0).services(grid(0).cluster()).deployNodeSingleton(SERVICE_NAME1, new DummyServiceImpl());
-
- break;
- }
-
for (int i = 0; i < gridCount(); i++)
info("Grid " + i + ": " + grid(i).localNode().id());
}
@@ -5521,6 +5510,13 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
* @throws Exception If failed.
*/
public void testTransformResourceInjection() throws Exception {
+ ClusterGroup servers = grid(0).cluster().forServers();
+
+ if(F.isEmpty(servers.nodes()))
+ return;
+
+ grid(0).services( grid(0).cluster()).deployNodeSingleton(SERVICE_NAME1, new DummyServiceImpl());
+
IgniteCache<String, Integer> cache = jcache();
Ignite ignite = ignite(0);
[03/50] [abbrv] ignite git commit: Merge branch 'ignite-1.7.5' into
ignite-1.8.3
Posted by vo...@apache.org.
Merge branch 'ignite-1.7.5' into ignite-1.8.3
# Conflicts:
# modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectExImpl.java
# modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
# modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesCodeConfigurationTest.cs
# modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/494cf882
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/494cf882
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/494cf882
Branch: refs/heads/ignite-1.9
Commit: 494cf88209b196f2677e26f468aab1f98d791217
Parents: 121f034 6c38eb2
Author: devozerov <vo...@gridgain.com>
Authored: Thu Jan 5 12:05:04 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 12:05:04 2017 +0300
----------------------------------------------------------------------
.../java/org/apache/ignite/IgniteLogger.java | 10 +-
.../apache/ignite/IgniteSystemProperties.java | 13 +
.../ignite/cache/affinity/AffinityKey.java | 4 +-
.../org/apache/ignite/events/CacheEvent.java | 6 +-
.../ignite/events/CacheQueryReadEvent.java | 8 +-
.../ignite/internal/binary/BinaryContext.java | 4 +-
.../internal/binary/BinaryEnumObjectImpl.java | 10 +-
.../ignite/internal/binary/BinaryMetadata.java | 5 +-
.../internal/binary/BinaryObjectExImpl.java | 8 +-
.../ignite/internal/binary/BinaryTypeProxy.java | 15 +-
.../ignite/internal/binary/BinaryUtils.java | 4 +-
.../cache/CacheInvokeDirectResult.java | 2 +-
.../processors/cache/CacheInvokeResult.java | 2 +-
.../processors/cache/CacheLazyEntry.java | 4 +-
.../processors/cache/CacheObjectAdapter.java | 7 +-
.../processors/cache/GridCacheAdapter.java | 5 +-
.../cache/GridCacheMvccCandidate.java | 9 +-
.../processors/cache/GridCacheReturn.java | 2 +-
.../processors/cache/IgniteCacheProxy.java | 2 +-
.../distributed/dht/GridDhtCacheAdapter.java | 2 +-
.../distributed/near/GridNearLockFuture.java | 2 +-
.../cache/query/GridCacheQueryAdapter.java | 4 +-
.../cache/query/GridCacheQueryManager.java | 13 +-
.../cache/query/GridCacheQueryRequest.java | 2 +
.../cache/query/GridCacheSqlQuery.java | 4 +-
.../continuous/CacheContinuousQueryEvent.java | 8 +-
.../continuous/CacheContinuousQueryManager.java | 4 +-
.../store/GridCacheStoreManagerAdapter.java | 30 +-
.../cache/store/GridCacheWriteBehindStore.java | 2 +-
.../transactions/IgniteTxLocalAdapter.java | 11 +-
.../GridCacheVersionConflictContext.java | 2 +-
.../closure/GridClosureProcessor.java | 4 +-
.../continuous/GridContinuousMessage.java | 2 +-
.../datastructures/CollocatedSetItemKey.java | 2 +-
.../GridCacheAtomicLongValue.java | 2 +
.../GridCacheAtomicSequenceImpl.java | 2 +
.../GridCacheAtomicSequenceValue.java | 2 +
.../GridCacheCountDownLatchValue.java | 3 +
.../datastructures/GridCacheSetItemKey.java | 2 +-
.../internal/processors/job/GridJobWorker.java | 7 +-
.../odbc/OdbcQueryExecuteRequest.java | 6 +-
.../platform/PlatformNativeException.java | 3 +-
.../processors/query/GridQueryProcessor.java | 35 +-
.../processors/rest/GridRestResponse.java | 2 +-
.../internal/util/future/GridFutureAdapter.java | 2 +-
.../util/lang/GridMetadataAwareAdapter.java | 2 +-
.../util/tostring/GridToStringBuilder.java | 656 +++-
.../util/tostring/GridToStringInclude.java | 12 +-
.../util/tostring/GridToStringThreadLocal.java | 12 +-
.../query/VisorQueryScanSubstringFilter.java | 5 +-
.../internal/visor/query/VisorQueryUtils.java | 60 +
.../visor/service/VisorCancelServiceTask.java | 70 +
.../visor/service/VisorServiceDescriptor.java | 132 +
.../visor/service/VisorServiceTask.java | 75 +
.../internal/visor/util/VisorTaskUtils.java | 15 +-
.../apache/ignite/logger/java/JavaLogger.java | 4 +-
.../apache/ignite/spi/indexing/IndexingSpi.java | 3 +
.../apache/ignite/util/AttributeNodeFilter.java | 108 +
.../resources/META-INF/classnames.properties | 7 +
.../internal/binary/BinaryEnumsSelfTest.java | 18 +
.../GridCacheBinaryObjectsAbstractSelfTest.java | 7 +-
.../cache/query/IndexingSpiQuerySelfTest.java | 199 +-
.../tostring/GridToStringBuilderSelfTest.java | 33 +-
.../junits/logger/GridTestLog4jLogger.java | 4 +-
.../ignite/testsuites/IgniteBasicTestSuite.java | 3 +
.../util/AttributeNodeFilterSelfTest.java | 184 +
.../hadoop/impl/igfs/HadoopIgfsJclLogger.java | 9 +-
.../org/apache/ignite/logger/jcl/JclLogger.java | 9 +-
.../apache/ignite/logger/log4j/Log4JLogger.java | 4 +-
modules/platforms/cpp/configure.ac | 2 +-
modules/platforms/cpp/configure.acrel | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
.../cpp/odbc/install/ignite-odbc-amd64.wxs | 2 +-
.../cpp/odbc/install/ignite-odbc-x86.wxs | 2 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Query/CacheQueriesCodeConfigurationTest.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Apache.Ignite/Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../apache/ignite/logger/slf4j/Slf4jLogger.java | 11 +-
.../spi/deployment/uri/UriDeploymentSpi.java | 2 +-
modules/web-console/backend/app/agent.js | 15 +
modules/web-console/backend/app/browser.js | 13 +
modules/web-console/backend/app/mongo.js | 24 +-
modules/web-console/backend/routes/demo.js | 17 +-
modules/web-console/backend/routes/profile.js | 3 +-
.../web-console/backend/services/notebooks.js | 14 +-
.../web-console/backend/services/sessions.js | 6 +-
modules/web-console/backend/services/spaces.js | 15 +
modules/web-console/frontend/app/app.js | 5 -
.../controllers/reset-password.controller.js | 14 +-
.../frontend/app/data/event-groups.json | 169 +
.../frontend/app/data/event-types.json | 169 -
.../frontend/app/data/pom-dependencies.json | 12 +-
.../ui-ace-docker/ui-ace-docker.controller.js | 2 +-
.../directives/ui-ace-docker/ui-ace-docker.jade | 2 +-
.../ui-ace-pojos/ui-ace-pojos.controller.js | 12 +-
.../ui-ace-pom/ui-ace-pom.controller.js | 4 +-
.../helpers/jade/form/form-field-dropdown.jade | 5 +-
.../helpers/jade/form/form-field-number.jade | 3 +-
.../app/helpers/jade/form/form-field-text.jade | 19 +-
.../frontend/app/helpers/jade/mixins.jade | 52 +-
.../frontend/app/modules/Demo/Demo.module.js | 6 +-
.../configuration/EventGroups.provider.js | 30 -
.../modules/configuration/Version.service.js | 6 +-
.../configuration/configuration.module.js | 63 +-
.../generator/AbstractTransformer.js | 17 +
.../modules/configuration/generator/Beans.js | 5 +
.../generator/ConfigurationGenerator.js | 2795 +++++++-------
.../configuration/generator/Custom.service.js | 23 +
.../configuration/generator/Docker.service.js | 4 +-
.../generator/JavaTransformer.service.js | 2318 +++++------
.../configuration/generator/Maven.service.js | 234 ++
.../configuration/generator/Pom.service.js | 233 --
.../generator/Properties.service.js | 2 +-
.../configuration/generator/Readme.service.js | 2 +-
.../generator/SharpTransformer.service.js | 437 ++-
.../generator/SpringTransformer.service.js | 497 ++-
.../defaults/Cache.platform.service.js | 56 +
.../generator/defaults/Cache.service.js | 131 +
.../defaults/Cluster.platform.service.js | 43 +
.../generator/defaults/Cluster.service.js | 289 ++
.../generator/defaults/Event-groups.service.js | 27 +
.../generator/defaults/IGFS.service.js | 64 +
.../defaults/cache.platform.provider.js | 60 -
.../generator/defaults/cache.provider.js | 137 -
.../defaults/cluster.platform.provider.js | 49 -
.../generator/defaults/cluster.provider.js | 293 --
.../generator/defaults/igfs.provider.js | 68 -
.../configuration/generator/generator-common.js | 625 ---
.../configuration/generator/generator-java.js | 3617 ------------------
.../generator/generator-optional.js | 25 -
.../configuration/generator/generator-spring.js | 2111 ----------
.../frontend/app/modules/sql/Notebook.data.js | 11 +-
.../app/modules/sql/Notebook.service.js | 2 +-
.../app/modules/sql/scan-filter-input.jade | 39 -
.../modules/sql/scan-filter-input.service.js | 51 -
.../frontend/app/modules/sql/sql.controller.js | 211 +-
.../frontend/app/modules/sql/sql.module.js | 2 -
.../app/modules/states/configuration.state.js | 2 +
.../configuration/caches/node-filter.jade | 2 +-
.../states/configuration/caches/query.jade | 3 +
.../states/configuration/caches/store.jade | 4 +-
.../configuration/clusters/checkpoint.jade | 11 +-
.../configuration/clusters/checkpoint/fs.jade | 8 +-
.../configuration/clusters/checkpoint/jdbc.jade | 8 +-
.../configuration/clusters/checkpoint/s3.jade | 25 +-
.../clusters/collision/custom.jade | 2 +-
.../clusters/collision/job-stealing.jade | 2 +-
.../configuration/clusters/deployment.jade | 129 +-
.../states/configuration/clusters/events.jade | 4 +-
.../states/configuration/clusters/failover.jade | 4 +-
.../clusters/general/discovery/zookeeper.jade | 2 +-
.../discovery/zookeeper/retrypolicy/custom.jade | 2 +-
.../configuration/clusters/load-balancing.jade | 23 +-
.../configuration/clusters/logger/custom.jade | 2 +-
.../states/configuration/clusters/ssl.jade | 2 +-
.../summary/summary-zipper.service.js | 37 +
.../configuration/summary/summary.controller.js | 103 +-
.../configuration/summary/summary.worker.js | 123 +
.../frontend/app/modules/user/Auth.service.js | 11 +-
.../frontend/app/services/JavaTypes.service.js | 13 +-
.../frontend/app/services/Messages.service.js | 17 +-
.../frontend/controllers/admin-controller.js | 211 +-
.../frontend/controllers/caches-controller.js | 22 +-
.../frontend/controllers/clusters-controller.js | 42 +-
.../frontend/controllers/domains-controller.js | 32 +-
.../frontend/controllers/igfs-controller.js | 20 +-
.../frontend/controllers/profile-controller.js | 3 +-
.../gulpfile.babel.js/webpack/common.js | 17 +-
.../webpack/environments/development.js | 14 +-
.../webpack/environments/production.js | 3 +-
.../webpack/plugins/progress.js | 82 -
modules/web-console/frontend/package.json | 178 +-
.../frontend/public/images/cache.png | Bin 23700 -> 24791 bytes
.../frontend/public/images/domains.png | Bin 23828 -> 22131 bytes
.../web-console/frontend/public/images/igfs.png | Bin 14307 -> 14139 bytes
.../frontend/public/images/query-chart.png | Bin 16637 -> 17142 bytes
.../frontend/public/images/query-metadata.png | Bin 32298 -> 39361 bytes
.../frontend/public/images/query-table.png | Bin 29189 -> 28065 bytes
.../frontend/public/images/summary.png | Bin 31997 -> 33650 bytes
.../stylesheets/_font-awesome-custom.scss | 23 +-
.../frontend/public/stylesheets/form-field.scss | 37 +
.../frontend/public/stylesheets/style.scss | 111 +-
.../frontend/test/unit/JavaTypes.test.js | 17 +-
.../frontend/test/unit/Version.test.js | 8 +-
.../views/configuration/domains-import.jade | 5 +-
.../frontend/views/configuration/summary.jade | 25 +-
.../frontend/views/settings/admin.jade | 85 +-
.../frontend/views/sql/notebook-new.jade | 2 +-
modules/web-console/frontend/views/sql/sql.jade | 235 +-
.../frontend/views/templates/alert.jade | 2 +-
.../frontend/views/templates/select.jade | 2 +-
202 files changed, 7352 insertions(+), 11509 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
index 4d85c54,0da0f49..083bb72
--- a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
+++ b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
@@@ -500,17 -502,17 +505,25 @@@ public final class IgniteSystemProperti
* <p>
* Defaults to {@code} false, meaning that unaligned access will be performed only on x86 architecture.
*/
- public static final String IGNITE_UNALIGNED_MEMORY_ACCESS = "IGNITE_UNALIGNED_MEMORY_ACCESS";
+ public static final String IGNITE_MEMORY_UNALIGNED_ACCESS = "IGNITE_MEMORY_UNALIGNED_ACCESS";
+
+ /**
+ * When unsafe memory copy if performed below this threshold, Ignite will do it on per-byte basis instead of
+ * calling to Unsafe.copyMemory().
+ * <p>
+ * Defaults to 0, meaning that threshold is disabled.
+ */
+ public static final String IGNITE_MEMORY_PER_BYTE_COPY_THRESHOLD = "IGNITE_MEMORY_PER_BYTE_COPY_THRESHOLD";
/**
+ * When set to {@code true} BinaryObject will be unwrapped before passing to IndexingSpi to preserve
+ * old behavior query processor with IndexingSpi.
+ * <p>
+ * @deprecated Should be removed in Apache Ignite 2.0.
+ */
+ public static final String IGNITE_UNWRAP_BINARY_FOR_INDEXING_SPI = "IGNITE_UNWRAP_BINARY_FOR_INDEXING_SPI";
+
+ /**
* Enforces singleton.
*/
private IgniteSystemProperties() {
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectExImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectExImpl.java
index b80f573,5f1e3e9..5b5aeba
--- a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectExImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryObjectExImpl.java
@@@ -27,9 -26,10 +27,10 @@@ import org.apache.ignite.binary.BinaryA
import org.apache.ignite.binary.BinaryObject;
import org.apache.ignite.binary.BinaryObjectBuilder;
import org.apache.ignite.binary.BinaryObjectException;
+import org.apache.ignite.binary.BinaryIdentityResolver;
import org.apache.ignite.binary.BinaryType;
import org.apache.ignite.internal.binary.builder.BinaryObjectBuilderImpl;
-import org.apache.ignite.internal.util.offheap.unsafe.GridUnsafeMemory;
+ import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.SB;
import org.apache.ignite.lang.IgniteUuid;
import org.jetbrains.annotations.Nullable;
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheWriteBehindStore.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
index 1594cee,6c093ee..58f94f4
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
@@@ -44,9 -44,9 +44,10 @@@ import javax.cache.Cache
import javax.cache.CacheException;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+ import org.apache.ignite.IgniteSystemProperties;
import org.apache.ignite.binary.BinaryField;
import org.apache.ignite.binary.BinaryObject;
+import org.apache.ignite.binary.BinaryObjectBuilder;
import org.apache.ignite.binary.BinaryType;
import org.apache.ignite.binary.Binarylizable;
import org.apache.ignite.cache.CacheTypeMetadata;
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/util/future/GridFutureAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/main/java/org/apache/ignite/internal/util/tostring/GridToStringBuilder.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/binary/GridCacheBinaryObjectsAbstractSelfTest.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/processors/cache/binary/GridCacheBinaryObjectsAbstractSelfTest.java
index 2a177ff,bf72782..c9f50d1
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/binary/GridCacheBinaryObjectsAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/binary/GridCacheBinaryObjectsAbstractSelfTest.java
@@@ -65,10 -58,9 +65,11 @@@ import org.apache.ignite.binary.BinaryF
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
import org.apache.ignite.internal.processors.cache.IgniteCacheProxy;
+import org.apache.ignite.internal.processors.cache.MapCacheStoreStrategy;
+import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.P2;
import org.apache.ignite.internal.util.typedef.internal.CU;
+ import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteBiInClosure;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 9a3da85,91f79bd..9537860
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@@ -31,6 -31,6 +31,6 @@@ using System.Runtime.InteropServices
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
index e48b8fd,ad0e915..88e619a
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
@@@ -30,6 -30,6 +30,6 @@@ using System.Runtime.InteropServices
[assembly: ComVisible(false)]
[assembly: Guid("134707f6-155d-47f6-9eb2-c67abbf3c009")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesCodeConfigurationTest.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index 817634e,7bf322f..b236907
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@@ -31,6 -31,6 +31,6 @@@ using System.Runtime.InteropServices
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
index a115145,76596da..a442355
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
@@@ -33,8 -33,8 +33,8 @@@ using System.Runtime.InteropServices
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("5b571661-17f4-4f29-8c7d-0edb38ca9b55")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
[assembly: AssemblyInformationalVersion("1.8.0")]
-[assembly: CLSCompliant(true)]
+[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index 7127e3c,8503026..17d065f
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@@ -31,6 -31,6 +31,6 @@@ using System.Runtime.InteropServices
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index 42fcb29,5834c57..224efd8
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@@ -31,6 -31,6 +31,6 @@@ using System.Runtime.InteropServices
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/494cf882/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index 90c2974,230e9d8..8e6b8b5
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@@ -31,6 -31,6 +31,6 @@@ using System.Runtime.InteropServices
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
- [assembly: AssemblyVersion("1.8.0.14218")]
- [assembly: AssemblyFileVersion("1.8.0.14218")]
+ [assembly: AssemblyVersion("1.8.0.16695")]
+ [assembly: AssemblyFileVersion("1.8.0.16695")]
-[assembly: AssemblyInformationalVersion("1.8.0")]
+[assembly: AssemblyInformationalVersion("1.8.0")]
[07/50] [abbrv] ignite git commit: IGNITE-4461: Hadoop: added
automatic resolution of "raw" comparator for Text class.
Posted by vo...@apache.org.
IGNITE-4461: Hadoop: added automatic resolution of "raw" comparator for Text class.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b6005b07
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b6005b07
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b6005b07
Branch: refs/heads/ignite-1.9
Commit: b6005b07b3e28907c8ff5cb6ebcce25bdb23bb48
Parents: e7d781e
Author: devozerov <vo...@gridgain.com>
Authored: Thu Jan 5 14:48:06 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Thu Jan 5 14:48:06 2017 +0300
----------------------------------------------------------------------
.../hadoop/impl/v2/HadoopV2TaskContext.java | 64 ++++++++++++++------
1 file changed, 46 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/b6005b07/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
index e9cae1c..d328550 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
@@ -41,6 +41,7 @@ import org.apache.hadoop.security.UserGroupInformation;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.hadoop.io.PartiallyRawComparator;
+import org.apache.ignite.hadoop.io.TextPartiallyRawComparator;
import org.apache.ignite.internal.processors.hadoop.HadoopClassLoader;
import org.apache.ignite.internal.processors.hadoop.HadoopCommonUtils;
import org.apache.ignite.internal.processors.hadoop.HadoopExternalSplit;
@@ -76,6 +77,8 @@ import java.io.File;
import java.io.IOException;
import java.security.PrivilegedExceptionAction;
import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Map;
import java.util.UUID;
import java.util.concurrent.Callable;
@@ -99,6 +102,9 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
private static final HadoopLazyConcurrentMap<FsCacheKey, FileSystem> fsMap
= createHadoopLazyConcurrentMap();
+ /** Default partial comparator mappings. */
+ private static final Map<String, String> PARTIAL_COMPARATORS = new HashMap<>();
+
/**
* This method is called with reflection upon Job finish with class loader of each task.
* This will clean up all the Fs created for specific task.
@@ -111,24 +117,6 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
fsMap.close();
}
- /**
- * Check for combiner grouping support (available since Hadoop 2.3).
- */
- static {
- boolean ok;
-
- try {
- JobContext.class.getDeclaredMethod("getCombinerKeyGroupingComparator");
-
- ok = true;
- }
- catch (NoSuchMethodException ignore) {
- ok = false;
- }
-
- COMBINE_KEY_GROUPING_SUPPORTED = ok;
- }
-
/** Flag is set if new context-object code is used for running the mapper. */
private final boolean useNewMapper;
@@ -153,6 +141,23 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
/** Counters for task. */
private final HadoopCounters cntrs = new HadoopCountersImpl();
+ static {
+ boolean ok;
+
+ try {
+ JobContext.class.getDeclaredMethod("getCombinerKeyGroupingComparator");
+
+ ok = true;
+ }
+ catch (NoSuchMethodException ignore) {
+ ok = false;
+ }
+
+ COMBINE_KEY_GROUPING_SUPPORTED = ok;
+
+ PARTIAL_COMPARATORS.put(Text.class.getName(), TextPartiallyRawComparator.class.getName());
+ }
+
/**
* @param taskInfo Task info.
* @param job Job.
@@ -181,6 +186,8 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
// For map-reduce jobs prefer local writes.
jobConf.setBooleanIfUnset(PARAM_IGFS_PREFER_LOCAL_WRITES, true);
+ initializePartiallyRawComparator(jobConf);
+
jobCtx = new JobContextImpl(jobConf, new JobID(jobId.globalId().toString(), jobId.localId()));
useNewMapper = jobConf.getUseNewMapper();
@@ -447,6 +454,7 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
}
/** {@inheritDoc} */
+ @SuppressWarnings("unchecked")
@Override public Comparator<Object> groupComparator() {
Comparator<?> res;
@@ -581,4 +589,24 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
throw new IgniteCheckedException(e);
}
}
+
+ /**
+ * Try initializing partially raw comparator for job.
+ *
+ * @param conf Configuration.
+ */
+ private void initializePartiallyRawComparator(JobConf conf) {
+ String clsName = conf.get(HadoopJobProperty.JOB_PARTIALLY_RAW_COMPARATOR.propertyName(), null);
+
+ if (clsName == null) {
+ Class keyCls = conf.getMapOutputKeyClass();
+
+ if (keyCls != null) {
+ clsName = PARTIAL_COMPARATORS.get(keyCls.getName());
+
+ if (clsName != null)
+ conf.set(HadoopJobProperty.JOB_PARTIALLY_RAW_COMPARATOR.propertyName(), clsName);
+ }
+ }
+ }
}
\ No newline at end of file
[15/50] [abbrv] ignite git commit: Merge remote-tracking branch
'upstream/ignite-1.8.3' into ignite-1.8.3
Posted by vo...@apache.org.
Merge remote-tracking branch 'upstream/ignite-1.8.3' into ignite-1.8.3
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/065fe452
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/065fe452
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/065fe452
Branch: refs/heads/ignite-1.9
Commit: 065fe4525cc46a46f65dd40af6f4be9f034c0de2
Parents: 476b089 e04d83c
Author: devozerov <vo...@gridgain.com>
Authored: Fri Jan 20 17:36:02 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Fri Jan 20 17:36:02 2017 +0300
----------------------------------------------------------------------
.../yardstick/cache/IgniteGetAllBenchmark.java | 42 ++++++++++++++++++++
.../cache/IgniteGetAllOffHeapBenchmark.java | 30 ++++++++++++++
.../yardstick/cache/IgniteGetBenchmark.java | 35 ++++++++++++++++
.../cache/IgnitePutAllOffHeapBenchmark.java | 30 ++++++++++++++
.../cache/IgnitePutAllTxOffHeapBenchmark.java | 30 ++++++++++++++
5 files changed, 167 insertions(+)
----------------------------------------------------------------------
[50/50] [abbrv] ignite git commit: Merge remote-tracking branch
'origin/ignite-1.9' into ignite-1.9
Posted by vo...@apache.org.
Merge remote-tracking branch 'origin/ignite-1.9' into ignite-1.9
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4eac51ce
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4eac51ce
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4eac51ce
Branch: refs/heads/ignite-1.9
Commit: 4eac51cee953aadb664265eae38aa08be53f59ee
Parents: 417e243 7b9cd07
Author: devozerov <vo...@gridgain.com>
Authored: Fri Feb 17 12:58:48 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Fri Feb 17 12:58:48 2017 +0300
----------------------------------------------------------------------
modules/kubernetes/config/Dockerfile | 17 +++++++++++++++++
modules/kubernetes/config/ignite-deployment.yaml | 15 +++++++++++++++
modules/kubernetes/config/ignite-service.yaml | 15 +++++++++++++++
parent/pom.xml | 2 +-
4 files changed, 48 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
[23/50] [abbrv] ignite git commit: IGNITE-4548 CacheJdbcStore:
support mapping of enum types.
Posted by vo...@apache.org.
IGNITE-4548 CacheJdbcStore: support mapping of enum types.
(cherry picked from commit f1fca3a)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ccc0f417
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ccc0f417
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ccc0f417
Branch: refs/heads/ignite-1.9
Commit: ccc0f41794bfd2deecc3e0bd042f82d81c9809d0
Parents: f25f85a
Author: Vasiliy Sisko <vs...@gridgain.com>
Authored: Fri Jan 20 16:22:24 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Jan 25 15:04:17 2017 +0700
----------------------------------------------------------------------
.../store/jdbc/CacheAbstractJdbcStore.java | 12 +++++-
.../store/jdbc/JdbcTypesDefaultTransformer.java | 19 +++++++++
.../cache/store/jdbc/JdbcTypesTransformer.java | 17 ++++++++
.../CacheJdbcPojoStoreAbstractSelfTest.java | 23 +++++++----
.../store/jdbc/CacheJdbcPojoStoreTest.java | 3 ++
...eJdbcStoreAbstractMultithreadedSelfTest.java | 17 ++++----
.../ignite/cache/store/jdbc/model/Gender.java | 41 ++++++++++++++++++++
.../ignite/cache/store/jdbc/model/Person.java | 31 ++++++++++++++-
.../src/test/config/jdbc-pojo-store-builtin.xml | 8 ++++
.../src/test/config/jdbc-pojo-store-obj.xml | 8 ++++
10 files changed, 162 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/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 4bfd92b..e7ce526 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
@@ -80,6 +80,8 @@ import static java.sql.Statement.SUCCESS_NO_INFO;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_BATCH_SIZE;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_PARALLEL_LOAD_CACHE_MINIMUM_THRESHOLD;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_WRITE_ATTEMPTS;
+import static org.apache.ignite.cache.store.jdbc.JdbcTypesTransformer.NUMERIC_TYPES;
+import static org.apache.ignite.cache.store.jdbc.JdbcTypesTransformer.NUMERIC_TYPES;
/**
* Implementation of {@link CacheStore} backed by JDBC.
@@ -1393,8 +1395,15 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
fieldVal = fieldVal.toString();
break;
+ default:
+ // No-op.
}
}
+ else if (field.getJavaFieldType().isEnum() && fieldVal instanceof Enum) {
+ Enum val = (Enum)fieldVal;
+
+ fieldVal = NUMERIC_TYPES.contains(field.getDatabaseFieldType()) ? val.ordinal() : val.name();
+ }
stmt.setObject(idx, fieldVal);
}
@@ -2068,12 +2077,13 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
int idx = 1;
- for (Object key : keys)
+ for (Object key : keys) {
for (JdbcTypeField field : em.keyColumns()) {
Object fieldVal = extractParameter(em.cacheName, em.keyType(), em.keyKind(), field.getJavaFieldName(), key);
fillParameter(stmt, idx++, field, fieldVal);
}
+ }
ResultSet rs = stmt.executeQuery();
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
index c32eaa2..c387b77 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
@@ -114,6 +114,25 @@ public class JdbcTypesDefaultTransformer implements JdbcTypesTransformer {
return UUID.fromString((String)res);
}
+ if (type.isEnum()) {
+ if (NUMERIC_TYPES.contains(rs.getMetaData().getColumnType(colIdx))) {
+ int ordinal = rs.getInt(colIdx);
+
+ Object[] values = type.getEnumConstants();
+
+ return rs.wasNull() || ordinal >= values.length ? null : values[ordinal];
+ }
+
+ String str = rs.getString(colIdx);
+
+ try {
+ return rs.wasNull() ? null : Enum.valueOf((Class<? extends Enum>) type, str.trim());
+ }
+ catch (IllegalArgumentException ignore) {
+ return null;
+ }
+ }
+
return rs.getObject(colIdx);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
index 76fb00b..fc0bc88 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
@@ -20,11 +20,28 @@ package org.apache.ignite.cache.store.jdbc;
import java.io.Serializable;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.util.List;
+import org.apache.ignite.internal.util.typedef.internal.U;
+
+import static java.sql.Types.BIGINT;
+import static java.sql.Types.DECIMAL;
+import static java.sql.Types.DOUBLE;
+import static java.sql.Types.FLOAT;
+import static java.sql.Types.INTEGER;
+import static java.sql.Types.NUMERIC;
+import static java.sql.Types.REAL;
+import static java.sql.Types.SMALLINT;
+import static java.sql.Types.TINYINT;
/**
* API for implementing custom mapping logic for loaded from store data.
*/
public interface JdbcTypesTransformer extends Serializable {
+ /** Numeric types. */
+ public final List<Integer> NUMERIC_TYPES =
+ U.sealList(TINYINT, SMALLINT, INTEGER, BIGINT, REAL, FLOAT, DOUBLE, NUMERIC, DECIMAL);
+
+
/**
* Retrieves the value of the designated column in the current row of this <code>ResultSet</code> object and
* will convert to the requested Java data type.
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
index 368a28e..1de44f7 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
@@ -30,6 +30,7 @@ import javax.cache.integration.CacheLoaderException;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.store.jdbc.dialect.H2Dialect;
import org.apache.ignite.cache.store.jdbc.model.Person;
+import org.apache.ignite.cache.store.jdbc.model.Gender;
import org.apache.ignite.cache.store.jdbc.model.PersonKey;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.ConnectorConfiguration;
@@ -112,7 +113,8 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
" id INTEGER PRIMARY KEY," +
" org_id INTEGER," +
" birthday DATE," +
- " name VARCHAR(50))");
+ " name VARCHAR(50)," +
+ " gender VARCHAR(50))");
conn.commit();
@@ -201,7 +203,8 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
new JdbcTypeField(Types.INTEGER, "ID", Integer.class, "id"),
new JdbcTypeField(Types.INTEGER, "ORG_ID", Integer.class, "orgId"),
new JdbcTypeField(Types.DATE, "BIRTHDAY", Date.class, "birthday"),
- new JdbcTypeField(Types.VARCHAR, "NAME", String.class, "name"));
+ new JdbcTypeField(Types.VARCHAR, "NAME", String.class, "name"),
+ new JdbcTypeField(Types.VARCHAR, "GENDER", Gender.class, "gender"));
return storeTypes;
}
@@ -260,7 +263,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
conn.commit();
PreparedStatement prnStmt = conn.prepareStatement(
- "INSERT INTO Person(id, org_id, birthday, name) VALUES (?, ?, ?, ?)");
+ "INSERT INTO Person(id, org_id, birthday, name, gender) VALUES (?, ?, ?, ?, ?)");
Random rnd = new Random();
@@ -269,6 +272,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
prnStmt.setInt(2, i % 100);
prnStmt.setDate(3, Date.valueOf(String.format("%d-%d-%d", 1970 + rnd.nextInt(50), 1 + rnd.nextInt(11), 1 + rnd.nextInt(27))));
prnStmt.setString(4, "name" + i);
+ prnStmt.setString(5, Gender.random().toString());
prnStmt.addBatch();
}
@@ -319,7 +323,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
protected void checkCacheLoadWithSql() {
IgniteCache<Object, Object> c1 = grid().cache(CACHE_NAME);
- c1.loadCache(null, "org.apache.ignite.cache.store.jdbc.model.PersonKey", "select id, org_id, name, birthday from Person");
+ c1.loadCache(null, "org.apache.ignite.cache.store.jdbc.model.PersonKey", "select id, org_id, name, birthday, gender from Person");
assertEquals(PERSON_CNT, c1.size());
}
@@ -397,7 +401,9 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
Connection conn = getConnection();
try {
- PreparedStatement stmt = conn.prepareStatement("SELECT ID, ORG_ID, BIRTHDAY, NAME FROM PERSON WHERE ID = ?");
+ Random rnd = new Random();
+
+ PreparedStatement stmt = conn.prepareStatement("SELECT ID, ORG_ID, BIRTHDAY, NAME, GENDER FROM PERSON WHERE ID = ?");
stmt.setInt(1, -1);
@@ -408,8 +414,9 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
U.closeQuiet(rs);
Date testDate = Date.valueOf("2001-05-05");
+ Gender testGender = Gender.random();
- Person val = new Person(-1, -2, testDate, "Person-to-test-put-insert", 999);
+ Person val = new Person(-1, -2, testDate, "Person-to-test-put-insert", 999, testGender);
Object key = builtinKeys ? Integer.valueOf(-1) : new PersonKey(-1);
@@ -424,6 +431,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
assertEquals(-2, rs.getInt(2));
assertEquals(testDate, rs.getDate(3));
assertEquals("Person-to-test-put-insert", rs.getString(4));
+ assertEquals(testGender.toString(), rs.getString(5));
assertFalse("Unexpected more data in result set", rs.next());
@@ -432,7 +440,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
// Test put-update.
testDate = Date.valueOf("2016-04-04");
- c1.put(key, new Person(-1, -3, testDate, "Person-to-test-put-update", 999));
+ c1.put(key, new Person(-1, -3, testDate, "Person-to-test-put-update", 999, testGender));
rs = stmt.executeQuery();
@@ -442,6 +450,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
assertEquals(-3, rs.getInt(2));
assertEquals(testDate, rs.getDate(3));
assertEquals("Person-to-test-put-update", rs.getString(4));
+ assertEquals(testGender.toString(), rs.getString(5));
assertFalse("Unexpected more data in result set", rs.next());
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
index 4a0b1da..849cab7 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
@@ -25,6 +25,7 @@ import java.sql.Timestamp;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Random;
import java.util.UUID;
import java.util.concurrent.ConcurrentLinkedQueue;
import javax.cache.integration.CacheWriterException;
@@ -233,6 +234,8 @@ public class CacheJdbcPojoStoreTest extends GridAbstractCacheStoreSelfTest<Cache
public void testLoadCache() throws Exception {
Connection conn = store.openConnection(false);
+ Random rnd = new Random();
+
PreparedStatement orgStmt = conn.prepareStatement("INSERT INTO Organization(id, name, city) VALUES (?, ?, ?)");
for (int i = 0; i < ORGANIZATION_CNT; i++) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
index e831445..f1a321b 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
@@ -33,6 +33,7 @@ import java.util.concurrent.Callable;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.cache.CacheTypeMetadata;
+import org.apache.ignite.cache.store.jdbc.model.Gender;
import org.apache.ignite.cache.store.jdbc.model.Organization;
import org.apache.ignite.cache.store.jdbc.model.OrganizationKey;
import org.apache.ignite.cache.store.jdbc.model.Person;
@@ -208,7 +209,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
cache.put(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
cache.put(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, 1));
+ new Date(System.currentTimeMillis()), "Name" + id, 1, Gender.random()));
}
return null;
@@ -228,7 +229,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
cache.putIfAbsent(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
cache.putIfAbsent(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, i));
+ new Date(System.currentTimeMillis()), "Name" + id, i, Gender.random()));
}
return null;
@@ -268,7 +269,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
map.put(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
map.put(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, 1));
+ new Date(System.currentTimeMillis()), "Name" + id, 1, Gender.random()));
}
IgniteCache<Object, Object> cache = jcache();
@@ -294,11 +295,11 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
try (Transaction tx = grid().transactions().txStart()) {
cache.put(new PersonKey(1), new Person(1, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 1, 1));
+ new Date(System.currentTimeMillis()), "Name" + 1, 1, Gender.random()));
cache.put(new PersonKey(2), new Person(2, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 2, 2));
+ new Date(System.currentTimeMillis()), "Name" + 2, 2, Gender.random()));
cache.put(new PersonKey(3), new Person(3, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 3, 3));
+ new Date(System.currentTimeMillis()), "Name" + 3, 3, Gender.random()));
cache.get(new PersonKey(1));
cache.get(new PersonKey(4));
@@ -306,9 +307,9 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
Map<PersonKey, Person> map = U.newHashMap(2);
map.put(new PersonKey(5), new Person(5, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 5, 5));
+ new Date(System.currentTimeMillis()), "Name" + 5, 5, Gender.random()));
map.put(new PersonKey(6), new Person(6, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 6, 6));
+ new Date(System.currentTimeMillis()), "Name" + 6, 6, Gender.random()));
cache.putAll(map);
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
new file mode 100644
index 0000000..8ddb0e2
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
@@ -0,0 +1,41 @@
+/*
+ * 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.cache.store.jdbc.model;
+
+import java.io.Serializable;
+import java.util.Random;
+
+/**
+ * Person gender enum.
+ */
+public enum Gender implements Serializable {
+ /** */
+ MALE,
+ /** */
+ FEMALE;
+
+ /** */
+ private static final Random RAND = new Random();
+
+ /**
+ * Used for testing purposes.
+ */
+ public static Gender random() {
+ return values()[RAND.nextInt(values().length)];
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
index 52ddfc8..89258b4 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
@@ -44,6 +44,9 @@ public class Person implements Serializable {
/** Value for salary. */
private Integer salary;
+ /** Value of person gender. */
+ private Gender gender;
+
/**
* Empty constructor.
*/
@@ -59,13 +62,15 @@ public class Person implements Serializable {
Integer orgId,
Date birthday,
String name,
- Integer salary
+ Integer salary,
+ Gender gender
) {
this.id = id;
this.orgId = orgId;
this.birthday = birthday;
this.name = name;
this.salary = salary;
+ this.gender = gender;
}
/**
@@ -159,6 +164,24 @@ public class Person implements Serializable {
this.salary = salary;
}
+ /**
+ * Gets gender.
+ *
+ * @return Gender.
+ */
+ public Gender getGender() {
+ return gender;
+ }
+
+ /**
+ * Sets gender.
+ *
+ * @param gender New value for gender.
+ */
+ public void setGender(Gender gender) {
+ this.gender = gender;
+ }
+
/** {@inheritDoc} */
@Override public boolean equals(Object o) {
if (this == o)
@@ -178,6 +201,9 @@ public class Person implements Serializable {
if (name != null ? !name.equals(that.name) : that.name != null)
return false;
+ if (gender != null ? !gender.equals(that.gender) : that.gender != null)
+ return false;
+
return true;
}
@@ -189,6 +215,8 @@ public class Person implements Serializable {
res = 31 * res + (name != null ? name.hashCode() : 0);
+ res = 31 * res + (gender != null ? gender.hashCode() : 0);
+
return res;
}
@@ -198,6 +226,7 @@ public class Person implements Serializable {
", orgId=" + orgId +
", birthday=" + (birthday == null ? null : birthday.getTime()) +
", name=" + name +
+ ", gender=" + gender +
"]";
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
----------------------------------------------------------------------
diff --git a/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml b/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
index dfaf828..bfb109c 100644
--- a/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
+++ b/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
@@ -151,6 +151,14 @@
<property name="javaFieldName" value="orgId"/>
<property name="javaFieldType" value="java.lang.Integer"/>
</bean>
+ <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
+ <property name="databaseFieldName" value="GENDER"/>
+ <property name="databaseFieldType">
+ <util:constant static-field="java.sql.Types.VARCHAR"/>
+ </property>
+ <property name="javaFieldName" value="gender"/>
+ <property name="javaFieldType" value="org.apache.ignite.cache.store.jdbc.model.Gender"/>
+ </bean>
</list>
</property>
</bean>
http://git-wip-us.apache.org/repos/asf/ignite/blob/ccc0f417/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
----------------------------------------------------------------------
diff --git a/modules/spring/src/test/config/jdbc-pojo-store-obj.xml b/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
index 9bc9977..40a14dc 100644
--- a/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
+++ b/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
@@ -151,6 +151,14 @@
<property name="javaFieldName" value="orgId"/>
<property name="javaFieldType" value="java.lang.Integer"/>
</bean>
+ <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
+ <property name="databaseFieldName" value="GENDER"/>
+ <property name="databaseFieldType">
+ <util:constant static-field="java.sql.Types.VARCHAR"/>
+ </property>
+ <property name="javaFieldName" value="gender"/>
+ <property name="javaFieldType" value="org.apache.ignite.cache.store.jdbc.model.Gender"/>
+ </bean>
</list>
</property>
</bean>
[48/50] [abbrv] ignite git commit: Merge branch 'ignite-1.8.3' into
ignite-1.9.
Posted by vo...@apache.org.
Merge branch 'ignite-1.8.3' into ignite-1.9.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ee7ae1b6
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ee7ae1b6
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ee7ae1b6
Branch: refs/heads/ignite-1.9
Commit: ee7ae1b6793b63bf1050ec0b79fb606545536923
Parents: aca315d caa3acb
Author: devozerov <vo...@gridgain.com>
Authored: Fri Feb 17 12:54:21 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Fri Feb 17 12:54:21 2017 +0300
----------------------------------------------------------------------
.../apache/ignite/IgniteSystemProperties.java | 32 +++++
.../ignite/internal/binary/BinaryContext.java | 3 +
.../ignite/internal/binary/BinaryTreeMap.java | 6 +-
.../processors/cache/EntryGetResult.java | 40 +++++-
.../processors/cache/EntryGetWithTtlResult.java | 58 +++++++++
.../processors/cache/GridCacheAdapter.java | 69 +++++------
.../processors/cache/GridCacheContext.java | 122 +++++++++++++++----
.../processors/cache/GridCacheEntryEx.java | 2 +-
.../processors/cache/GridCacheMapEntry.java | 29 +++--
.../distributed/dht/GridDhtCacheAdapter.java | 4 +-
.../cache/distributed/dht/GridDhtGetFuture.java | 24 ++--
.../distributed/dht/GridDhtGetSingleFuture.java | 24 ++--
.../dht/GridPartitionedGetFuture.java | 19 ++-
.../dht/GridPartitionedSingleGetFuture.java | 7 +-
.../dht/atomic/GridDhtAtomicCache.java | 12 +-
.../dht/colocated/GridDhtColocatedCache.java | 15 ++-
.../distributed/near/GridNearGetFuture.java | 9 +-
.../cache/distributed/near/GridNearTxLocal.java | 8 +-
.../local/atomic/GridLocalAtomicCache.java | 13 +-
.../transactions/IgniteTxLocalAdapter.java | 65 ++++++----
.../processors/cluster/GridUpdateNotifier.java | 2 +-
.../processors/hadoop/HadoopJobProperty.java | 2 +-
.../processors/query/GridQueryProcessor.java | 1 +
.../resources/META-INF/classnames.properties | 6 +-
.../cache/GridCacheAbstractFullApiSelfTest.java | 20 ++-
.../processors/cache/GridCacheTestEntryEx.java | 104 ++++++++--------
.../CacheLockReleaseNodeLeaveTest.java | 64 +++++++++-
.../IgniteCacheExpiryPolicyAbstractTest.java | 42 +++++++
.../tcp/TcpCommunicationSpiDropNodesTest.java | 3 +-
.../TcpCommunicationSpiFaultyClientTest.java | 3 +-
.../hadoop/impl/v2/HadoopV2TaskContext.java | 1 +
.../hadoop/shuffle/HadoopShuffleJob.java | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
modules/yardstick/config/ignite-base-config.xml | 25 ++++
.../yardstick/cache/IgniteGetAllBenchmark.java | 42 +++++++
.../cache/IgniteGetAllOffHeapBenchmark.java | 30 +++++
.../yardstick/cache/IgniteGetBenchmark.java | 35 ++++++
.../cache/IgnitePutAllOffHeapBenchmark.java | 30 +++++
.../cache/IgnitePutAllTxOffHeapBenchmark.java | 30 +++++
.../IgnitePutOffHeapIndexedValue8Benchmark.java | 30 +++++
.../IgnitePutRandomValueSizeBenchmark.java | 41 +++++++
46 files changed, 857 insertions(+), 229 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index f26288f,ccd2285..f47e9f3
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@@ -761,11 -761,11 +761,11 @@@ public interface GridCacheEntryEx
* @throws IgniteCheckedException If index could not be updated.
* @throws GridCacheEntryRemovedException If entry was removed.
*/
- public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ public EntryGetResult versionedValue(CacheObject val,
@Nullable GridCacheVersion curVer,
@Nullable GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs,
- @Nullable IgniteCacheExpiryPolicy loadExpiryPlc)
+ @Nullable IgniteCacheExpiryPolicy loadExpiryPlc,
+ @Nullable ReaderArguments readerArgs)
throws IgniteCheckedException, GridCacheEntryRemovedException;
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index 942ae21,58b4ae3..2237e22
--- 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
@@@ -3621,13 -3634,13 +3634,13 @@@ public abstract class GridCacheMapEntr
}
/** {@inheritDoc} */
- @Override public synchronized T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ @Override public synchronized EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs,
- @Nullable IgniteCacheExpiryPolicy loadExpiryPlc)
- throws IgniteCheckedException, GridCacheEntryRemovedException
- {
+ @Nullable IgniteCacheExpiryPolicy loadExpiryPlc,
+ @Nullable ReaderArguments readerArgs)
+ throws IgniteCheckedException, GridCacheEntryRemovedException {
+
checkObsolete();
addReaderIfNeed(readerArgs);
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetSingleFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/main/resources/META-INF/classnames.properties
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index e76ab40,8f0d9b1..a631a96
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@@ -684,12 -685,12 +684,12 @@@ public class GridCacheTestEntryEx exten
return null;
}
- /** @inheritDoc */
- @Override public T2<CacheObject, GridCacheVersion> versionedValue(CacheObject val,
+ /** {@inheritDoc} */
+ @Override public EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
- @Nullable ReaderArguments readerArgs,
- IgniteCacheExpiryPolicy loadExpiryPlc) {
+ @Nullable IgniteCacheExpiryPolicy loadExpiryPlc,
+ @Nullable ReaderArguments readerArgs) {
assert false;
return null;
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheLockReleaseNodeLeaveTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/expiry/IgniteCacheExpiryPolicyAbstractTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpiFaultyClientTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
index 72e65c0,597685e..6981500
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
@@@ -27,7 -27,7 +27,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
--[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
index 898397d,78541eb..d6b1699
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
--[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
index 5346eba,acf46b0..4d25f53
--- a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
@@@ -25,7 -25,7 +25,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
--[assembly: AssemblyCopyright("Copyright � 2015")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
index 396c837,042aed8..09e5749
--- a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
@@@ -24,7 -24,7 +24,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
--[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
index 6802594,f6dbd51..3f2aa71
--- a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
@@@ -24,7 -24,7 +24,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
--[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/ee7ae1b6/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
[32/50] [abbrv] ignite git commit: IGNITE-4622 Fixed generation in
domain model for cache store.
Posted by vo...@apache.org.
IGNITE-4622 Fixed generation in domain model for cache store.
(cherry picked from commit 43007d5)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6667f3bf
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6667f3bf
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6667f3bf
Branch: refs/heads/ignite-1.9
Commit: 6667f3bf572b05a51c2d576f7208d7c0a20d2e9a
Parents: cfbe6e5
Author: Andrey Novikov <an...@gridgain.com>
Authored: Fri Jan 27 11:30:49 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Feb 1 18:05:14 2017 +0700
----------------------------------------------------------------------
.../configuration/generator/ConfigurationGenerator.js | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6667f3bf/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js b/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
index 8770bf6..abe361c 100644
--- a/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
+++ b/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
@@ -48,6 +48,10 @@ export default class IgniteConfigurationGenerator {
return new Bean('org.apache.ignite.cache.QueryEntity', 'qryEntity', domain, cacheDflts);
}
+ static domainJdbcTypeBean(domain) {
+ return new Bean('org.apache.ignite.cache.store.jdbc.JdbcType', 'type', domain);
+ }
+
static discoveryConfigurationBean(discovery) {
return new Bean('org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi', 'discovery', discovery, clusterDflts.discovery);
}
@@ -1383,7 +1387,7 @@ export default class IgniteConfigurationGenerator {
}
// Generate domain model for store group.
- static domainStore(domain, cfg = this.domainConfigurationBean(domain)) {
+ static domainStore(domain, cfg = this.domainJdbcTypeBean(domain)) {
cfg.stringProperty('databaseSchema')
.stringProperty('databaseTable');
@@ -1527,8 +1531,7 @@ export default class IgniteConfigurationGenerator {
if (_.isNil(domain.databaseTable))
return acc;
- const typeBean = new Bean('org.apache.ignite.cache.store.jdbc.JdbcType', 'type',
- _.merge({}, domain, {cacheName: cache.name}))
+ const typeBean = this.domainJdbcTypeBean(_.merge({}, domain, {cacheName: cache.name}))
.stringProperty('cacheName');
setType(typeBean, 'keyType');
[47/50] [abbrv] ignite git commit: Merge branch 'ignite-1.7.7' into
ignite-1.8.3
Posted by vo...@apache.org.
Merge branch 'ignite-1.7.7' into ignite-1.8.3
# Conflicts:
# modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
# modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
# modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
# modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/caa3acb5
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/caa3acb5
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/caa3acb5
Branch: refs/heads/ignite-1.9
Commit: caa3acb519e98a86def1ead13e2d0f2e59e620b5
Parents: 03f6822 0a43665
Author: devozerov <vo...@gridgain.com>
Authored: Tue Feb 14 12:09:10 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Tue Feb 14 12:09:10 2017 +0300
----------------------------------------------------------------------
NOTICE | 2 +-
assembly/NOTICE_FABRIC | 2 +-
assembly/NOTICE_HADOOP | 2 +-
modules/core/src/main/java/META-INF/NOTICE | 2 +-
.../ignite/internal/IgniteVersionUtils.java | 2 +-
.../processors/cache/EntryGetResult.java | 40 +++++-
.../processors/cache/EntryGetWithTtlResult.java | 58 +++++++++
.../processors/cache/GridCacheAdapter.java | 104 ++++++++--------
.../processors/cache/GridCacheContext.java | 122 +++++++++++++++----
.../processors/cache/GridCacheEntryEx.java | 6 +-
.../processors/cache/GridCacheMapEntry.java | 46 +++++--
.../GridDistributedCacheAdapter.java | 6 +-
.../distributed/dht/GridDhtCacheAdapter.java | 10 +-
.../cache/distributed/dht/GridDhtGetFuture.java | 24 ++--
.../distributed/dht/GridDhtGetSingleFuture.java | 24 ++--
.../distributed/dht/GridDhtLockFuture.java | 21 +++-
.../dht/GridDhtTransactionalCacheAdapter.java | 7 ++
.../distributed/dht/GridDhtTxLocalAdapter.java | 8 +-
.../dht/GridPartitionedGetFuture.java | 20 ++-
.../dht/GridPartitionedSingleGetFuture.java | 9 +-
.../dht/atomic/GridDhtAtomicCache.java | 15 ++-
.../dht/colocated/GridDhtColocatedCache.java | 25 +++-
.../colocated/GridDhtColocatedLockFuture.java | 10 +-
.../distributed/near/GridNearAtomicCache.java | 1 +
.../distributed/near/GridNearGetFuture.java | 10 +-
.../distributed/near/GridNearGetRequest.java | 77 ++++++++----
.../distributed/near/GridNearLockFuture.java | 7 ++
.../distributed/near/GridNearLockRequest.java | 81 ++++++++----
.../near/GridNearSingleGetRequest.java | 57 ++++++---
.../near/GridNearTransactionalCache.java | 2 +
.../cache/distributed/near/GridNearTxLocal.java | 25 ++--
.../processors/cache/local/GridLocalCache.java | 1 +
.../local/atomic/GridLocalAtomicCache.java | 14 +--
.../transactions/IgniteTxLocalAdapter.java | 102 +++++++++++-----
.../cache/transactions/IgniteTxLocalEx.java | 3 +
.../cache/GridCacheAbstractFullApiSelfTest.java | 20 ++-
.../processors/cache/GridCacheTestEntryEx.java | 107 ++++++++--------
.../CacheLockReleaseNodeLeaveTest.java | 65 +++++++++-
.../IgniteCacheExpiryPolicyAbstractTest.java | 44 ++++++-
...eCacheExpiryPolicyWithStoreAbstractTest.java | 102 ++++++++++++++++
.../IgniteCacheTxExpiryPolicyWithStoreTest.java | 21 ++++
.../startup/GridRandomCommandLineLoader.java | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.AspNet.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Core.Schema.nuspec | 2 +-
.../Apache.Ignite.Core.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Linq.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.Log4Net.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite.NLog.nuspec | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Apache.Ignite/Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
.../Properties/AssemblyInfo.cs | 2 +-
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/pom.xml | 2 +-
.../app/modules/branding/branding.provider.js | 2 +-
.../views/templates/agent-download.jade | 2 +-
modules/web-console/web-agent/README.txt | 2 +-
parent/pom.xml | 2 +-
67 files changed, 1000 insertions(+), 356 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index e954748,11bf34b..a50661e
--- 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
@@@ -1536,7 -1548,7 +1539,7 @@@ public abstract class GridCacheAdapter<
long start = statsEnabled ? System.nanoTime() : 0L;
- Map<K, T2<V, GridCacheVersion>> map = (Map<K, T2<V, GridCacheVersion>>)getAll0(keys, !ctx.keepBinary(), true);
- Map<K, EntryGetResult> map = (Map<K, EntryGetResult>)getAll(keys, !ctx.keepBinary(), true);
++ Map<K, EntryGetResult> map = (Map<K, EntryGetResult>)getAll0(keys, !ctx.keepBinary(), true);
Collection<CacheEntry<K, V>> res = new HashSet<>();
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLockFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedLockFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearLockFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index 04ca50c,1a9b082..ea816fe
--- 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
@@@ -475,12 -478,13 +478,13 @@@ public abstract class IgniteTxLocalAdap
CacheObject cacheVal = cacheCtx.toCacheObject(val);
while (true) {
- GridCacheEntryEx entry = cacheCtx.cache().entryEx(key);
+ GridCacheEntryEx entry = cacheCtx.cache().entryEx(key, topVer);
try {
- T2<CacheObject, GridCacheVersion> verVal = entry.versionedValue(cacheVal,
+ EntryGetResult verVal = entry.versionedValue(cacheVal,
ver,
null,
+ null,
null);
if (log.isDebugEnabled()) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
index 49f2fe8,236584e..7891614
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Apache.Ignite.AspNet.nuspec
@@@ -44,8 -44,11 +44,8 @@@ Session State Store Provider: stores se
More info: https://apacheignite-net.readme.io/
</description>
- <summary>
- Apache Ignite ASP.NET Integration
- </summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>OutputCacheProvider Apache Ignite In-Memory Distributed Computing SQL NoSQL Grid Map Reduce Cache</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
index a1c19d3,ad1d5ab..87028b1
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
@@@ -25,7 -25,7 +25,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 49a0395,a1d8aef..9c94569
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
index 0b8ce1e,3994598..0367c9c
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index 463ed3e,d8bb169..802bff7
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.Schema.nuspec
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
index 8621103,2c4dfc1..8f562f1
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Apache.Ignite.Core.nuspec
@@@ -44,8 -44,11 +44,8 @@@ Apache Ignite In-Memory Data Fabric is
More info: https://apacheignite-net.readme.io/
</description>
- <summary>
- High-performance in-memory platform for computing and transacting on large-scale data sets in real-time.
- </summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL Grid Map Reduce Cache linqpad-samples</tags>
</metadata>
<files>
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
index 2a14a25,f8512f1..71d65a6
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@@ -25,7 -25,7 +25,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
index 330ed29,93aa8c2..c71d672
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Apache.Ignite.Linq.nuspec
@@@ -46,8 -46,11 +46,8 @@@ All Ignite SQL features are supported:
More info: https://apacheignite-net.readme.io/
</description>
- <summary>
- LINQ Provider for Apache Ignite
- </summary>
<releaseNotes></releaseNotes>
- <copyright>Copyright 2016</copyright>
+ <copyright>Copyright 2017</copyright>
<tags>Apache Ignite In-Memory Distributed Computing SQL NoSQL LINQ Grid Map Reduce Cache linqpad-samples</tags>
<dependencies>
<dependency id="Apache.Ignite" version="[$version$]" />
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
index 8e07c7d,446fe1e..bed6694
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
@@@ -24,7 -24,7 +24,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index d805afb,41b6289..b36491a
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index 9082035,396eeb6..ff7aa44
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --cc modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index 3e55f91,0855afb..3ad324e
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@@ -23,7 -23,7 +23,7 @@@ using System.Runtime.InteropServices
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Apache Software Foundation")]
[assembly: AssemblyProduct("Apache Ignite.NET")]
- [assembly: AssemblyCopyright("Copyright 2016")]
-[assembly: AssemblyCopyright("Copyright � 2017")]
++[assembly: AssemblyCopyright("Copyright 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/modules/scalar/pom.xml
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/caa3acb5/parent/pom.xml
----------------------------------------------------------------------
[18/50] [abbrv] ignite git commit: Added benchmark.
Posted by vo...@apache.org.
Added benchmark.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7f0af435
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7f0af435
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7f0af435
Branch: refs/heads/ignite-1.9
Commit: 7f0af43519f9e27f84ce8106d98b90aff00ee936
Parents: db84b9b
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jan 23 14:14:22 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jan 23 14:14:22 2017 +0300
----------------------------------------------------------------------
.../IgnitePutRandomValueSizeBenchmark.java | 41 ++++++++++++++++++++
1 file changed, 41 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/7f0af435/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutRandomValueSizeBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutRandomValueSizeBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutRandomValueSizeBenchmark.java
new file mode 100644
index 0000000..be85b9f
--- /dev/null
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutRandomValueSizeBenchmark.java
@@ -0,0 +1,41 @@
+/*
+ * 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.yardstick.cache;
+
+import java.util.Map;
+import org.apache.ignite.IgniteCache;
+
+/**
+ *
+ */
+public class IgnitePutRandomValueSizeBenchmark extends IgniteCacheAbstractBenchmark<Integer, Object> {
+ /** {@inheritDoc} */
+ @Override public boolean test(Map<Object, Object> ctx) throws Exception {
+ int key = nextRandom(args.range());
+ int size = 64 + nextRandom(64);
+
+ cache.put(key, new byte[size]);
+
+ return true;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected IgniteCache<Integer, Object> cache() {
+ return ignite().cache("atomic-offheap");
+ }
+}
[49/50] [abbrv] ignite git commit: Minor styling fixes.
Posted by vo...@apache.org.
Minor styling fixes.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/417e2435
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/417e2435
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/417e2435
Branch: refs/heads/ignite-1.9
Commit: 417e243542d6902cb8279d87fc5aeb23f8d0764c
Parents: ee7ae1b
Author: devozerov <vo...@gridgain.com>
Authored: Fri Feb 17 12:54:53 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Fri Feb 17 12:54:53 2017 +0300
----------------------------------------------------------------------
.../processors/query/GridQueryProcessor.java | 1 -
.../processors/cache/GridCacheTestEntryEx.java | 102 +++++++++----------
.../hadoop/impl/v2/HadoopV2TaskContext.java | 1 -
.../hadoop/shuffle/HadoopShuffleJob.java | 1 -
4 files changed, 51 insertions(+), 54 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/417e2435/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
index f87db43..ee9224b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
@@ -44,7 +44,6 @@ import javax.cache.Cache;
import javax.cache.CacheException;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
-import org.apache.ignite.IgniteSystemProperties;
import org.apache.ignite.binary.BinaryField;
import org.apache.ignite.binary.BinaryObject;
import org.apache.ignite.binary.BinaryObjectBuilder;
http://git-wip-us.apache.org/repos/asf/ignite/blob/417e2435/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index a631a96..1ecc2d1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@ -279,7 +279,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return true;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public KeyCacheObject key() {
return key;
}
@@ -289,7 +289,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return new IgniteTxKey(key, 0);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject rawGet() {
return val;
}
@@ -304,7 +304,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return val != null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject rawPut(CacheObject val, long ttl) {
CacheObject old = this.val;
@@ -314,14 +314,14 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return old;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public Cache.Entry wrap() {
assert false;
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public Cache.Entry wrapLazyValue(boolean keepBinary) {
assert false;
@@ -335,19 +335,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Nullable @Override public CacheObject peekVisibleValue() {
assert false;
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheVersion obsoleteVersion() {
return obsoleteVer;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean obsolete() {
return obsoleteVer != null;
}
@@ -357,7 +357,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return obsoleteVer != null && !obsoleteVer.equals(exclude);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean invalidate(@Nullable GridCacheVersion curVer, GridCacheVersion newVer)
throws IgniteCheckedException {
assert false;
@@ -365,7 +365,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean invalidate(@Nullable CacheEntryPredicate[] filter)
throws GridCacheEntryRemovedException, IgniteCheckedException {
assert false;
@@ -373,7 +373,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean evictInternal(boolean swap, GridCacheVersion obsoleteVer,
@Nullable CacheEntryPredicate[] filter) {
assert false;
@@ -389,7 +389,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean isNew() {
assert false; return false;
}
@@ -399,7 +399,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
assert false; return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject innerGet(
@Nullable GridCacheVersion ver,
@Nullable IgniteInternalTx tx,
@@ -416,12 +416,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return val;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public void clearReserveForLoad(GridCacheVersion ver) {
assert false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public EntryGetResult innerGetAndReserveForLoad(
boolean readSwap,
boolean updateMetrics,
@@ -436,7 +436,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Nullable @Override public EntryGetResult innerGetVersioned(
@Nullable GridCacheVersion ver,
IgniteInternalTx tx,
@@ -455,12 +455,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject innerReload() {
return val;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheUpdateTxResult innerSet(@Nullable IgniteInternalTx tx,
UUID evtNodeId,
UUID affNodeId,
@@ -543,7 +543,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheUpdateTxResult innerRemove(
@Nullable IgniteInternalTx tx,
UUID evtNodeId,
@@ -572,7 +572,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return new GridCacheUpdateTxResult(true, old);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean clear(GridCacheVersion ver, boolean readers) throws IgniteCheckedException {
if (ver == null || ver.equals(this.ver)) {
val = null;
@@ -583,7 +583,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean tmLock(IgniteInternalTx tx,
long timeout,
@Nullable GridCacheVersion serOrder,
@@ -593,12 +593,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public void txUnlock(IgniteInternalTx tx) {
assert false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean removeLock(GridCacheVersion ver) {
GridCacheMvccCandidate doomed = mvcc.candidate(ver);
@@ -607,7 +607,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return doomed != null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean markObsolete(GridCacheVersion ver) {
if (ver == null || ver.equals(obsoleteVer)) {
obsoleteVer = ver;
@@ -644,19 +644,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheVersion version() {
return ver;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean checkSerializableReadVersion(GridCacheVersion ver) {
assert false;
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean initialValue(
CacheObject val,
GridCacheVersion ver,
@@ -672,19 +672,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean initialValue(KeyCacheObject key, GridCacheSwapEntry unswapped) {
assert false;
return false;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheVersionedEntryEx versionedEntry(final boolean keepBinary) throws IgniteCheckedException {
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public EntryGetResult versionedValue(CacheObject val,
GridCacheVersion curVer,
GridCacheVersion newVer,
@@ -695,22 +695,22 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean hasLockCandidate(GridCacheVersion ver) {
return mvcc.hasCandidate(ver);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByAny(GridCacheVersion... exclude) {
return !mvcc.isEmpty(exclude);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByThread() {
return lockedByThread(Thread.currentThread().getId());
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedLocally(GridCacheVersion lockVer) {
return mvcc.isLocallyOwned(lockVer);
}
@@ -721,52 +721,52 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return lockedLocally(lockVer) || lockedByThread(threadId);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByThread(long threadId, GridCacheVersion exclude) {
return mvcc.isLocallyOwnedByThread(threadId, false, exclude);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByThread(long threadId) {
return mvcc.isLocallyOwnedByThread(threadId, true);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedBy(GridCacheVersion ver) {
return mvcc.isOwnedBy(ver);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByThreadUnsafe(long threadId) {
return mvcc.isLocallyOwnedByThread(threadId, true);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedByUnsafe(GridCacheVersion ver) {
return mvcc.isOwnedBy(ver);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean lockedLocallyUnsafe(GridCacheVersion lockVer) {
return mvcc.isLocallyOwned(lockVer);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public boolean hasLockCandidateUnsafe(GridCacheVersion ver) {
return mvcc.hasCandidate(ver);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public Collection<GridCacheMvccCandidate> localCandidates(GridCacheVersion... exclude) {
return mvcc.localCandidates(exclude);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
Collection<GridCacheMvccCandidate> localCandidates(boolean reentries, GridCacheVersion... exclude) {
return mvcc.localCandidates(reentries, exclude);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public Collection<GridCacheMvccCandidate> remoteMvccSnapshot(GridCacheVersion... exclude) {
return mvcc.remoteCandidates(exclude);
}
@@ -776,7 +776,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return mvcc.localCandidate(threadId);
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheMvccCandidate candidate(GridCacheVersion ver) {
return mvcc.candidate(ver);
}
@@ -794,19 +794,19 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return mvcc.anyOwner();
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public GridCacheMvccCandidate localOwner() {
return mvcc.localOwner();
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject valueBytes() {
assert false;
return null;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public CacheObject valueBytes(GridCacheVersion ver) {
assert false;
@@ -818,7 +818,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return 0;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public long expireTime() {
return 0;
}
@@ -838,12 +838,12 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
return ttl;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public long ttl() {
return ttl;
}
- /** {@inheritDoc} */
+ /** @inheritDoc */
@Override public void updateTtl(GridCacheVersion ver, long ttl) {
throw new UnsupportedOperationException();
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/417e2435/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
index c23fab6..b8d4cac 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/impl/v2/HadoopV2TaskContext.java
@@ -44,7 +44,6 @@ import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.hadoop.io.BytesWritablePartiallyRawComparator;
import org.apache.ignite.hadoop.io.PartiallyRawComparator;
import org.apache.ignite.hadoop.io.TextPartiallyRawComparator;
-import org.apache.ignite.internal.processors.hadoop.HadoopClassLoader;
import org.apache.ignite.internal.processors.hadoop.HadoopCommonUtils;
import org.apache.ignite.internal.processors.hadoop.HadoopExternalSplit;
import org.apache.ignite.internal.processors.hadoop.HadoopInputSplit;
http://git-wip-us.apache.org/repos/asf/ignite/blob/417e2435/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
index 4bcc398..83dbd73 100644
--- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
+++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleJob.java
@@ -178,7 +178,6 @@ public class HadoopShuffleJob<T> implements AutoCloseable {
this.log = log.getLogger(HadoopShuffleJob.class);
this.embedded = embedded;
- // No stripes for combiner.
boolean stripeMappers0 = get(job.info(), SHUFFLE_MAPPER_STRIPED_OUTPUT, true);
if (stripeMappers0) {
[16/50] [abbrv] ignite git commit: Merge remote-tracking branch
'remotes/community/ignite-1.7.6' into ignite-1.8.3
Posted by vo...@apache.org.
Merge remote-tracking branch 'remotes/community/ignite-1.7.6' into ignite-1.8.3
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/09ed1284
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/09ed1284
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/09ed1284
Branch: refs/heads/ignite-1.9
Commit: 09ed12847422b265a60d7217530b98728363688b
Parents: 065fe45 f350578
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jan 23 11:20:57 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jan 23 11:20:57 2017 +0300
----------------------------------------------------------------------
.../apache/ignite/IgniteSystemProperties.java | 3 +
.../org/apache/ignite/cache/QueryEntity.java | 21 +
.../org/apache/ignite/cache/query/SqlQuery.java | 25 +
.../store/jdbc/dialect/BasicJdbcDialect.java | 31 +-
.../GridClientConnectionManagerAdapter.java | 7 +-
.../impl/connection/GridClientTopology.java | 53 ++-
.../processors/cache/EntryGetResult.java | 65 +++
.../processors/cache/GridCacheAdapter.java | 123 +++--
.../cache/GridCacheClearAllRunnable.java | 58 +--
.../processors/cache/GridCacheContext.java | 4 +-
.../processors/cache/GridCacheEntryEx.java | 42 +-
.../processors/cache/GridCacheMapEntry.java | 144 +++++-
.../processors/cache/GridCacheSwapManager.java | 8 -
.../processors/cache/GridCacheUtils.java | 3 +
.../processors/cache/IgniteCacheProxy.java | 3 +
.../processors/cache/ReaderArguments.java | 74 +++
.../distributed/dht/GridDhtCacheAdapter.java | 9 +-
.../cache/distributed/dht/GridDhtGetFuture.java | 83 ++--
.../distributed/dht/GridDhtGetSingleFuture.java | 75 ++-
.../dht/GridPartitionedGetFuture.java | 10 +-
.../dht/GridPartitionedSingleGetFuture.java | 10 +-
.../dht/atomic/GridDhtAtomicCache.java | 12 +-
.../GridNearAtomicAbstractUpdateFuture.java | 34 +-
.../GridNearAtomicSingleUpdateFuture.java | 44 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 57 +--
.../dht/colocated/GridDhtColocatedCache.java | 10 +-
.../distributed/near/GridNearGetFuture.java | 19 +-
.../local/atomic/GridLocalAtomicCache.java | 11 +-
.../cache/query/GridCacheQueryManager.java | 83 +++-
.../continuous/CacheContinuousQueryHandler.java | 81 +++-
.../cache/transactions/IgniteTxHandler.java | 4 +-
.../transactions/IgniteTxLocalAdapter.java | 64 +--
.../IgniteCacheObjectProcessorImpl.java | 5 +-
.../processors/query/GridQueryIndexing.java | 4 +-
.../processors/query/GridQueryProcessor.java | 79 ++--
.../query/GridQueryTypeDescriptor.java | 7 +
.../communication/tcp/TcpCommunicationSpi.java | 16 +
.../ignite/spi/discovery/tcp/ClientImpl.java | 90 +++-
.../ignite/spi/discovery/tcp/ServerImpl.java | 63 ++-
.../messages/TcpDiscoveryAbstractMessage.java | 21 +
modules/core/src/test/config/log4j-test.xml | 6 +
.../store/jdbc/CacheJdbcPojoStoreTest.java | 48 +-
.../ignite/cache/store/jdbc/model/Person.java | 2 +-
.../cache/CacheConcurrentReadThroughTest.java | 184 ++++++++
.../cache/CacheEntryProcessorCopySelfTest.java | 6 +-
.../cache/GridCacheBasicStoreAbstractTest.java | 2 +-
.../processors/cache/GridCacheTestEntryEx.java | 30 +-
.../GridCacheDhtEvictionsDisabledSelfTest.java | 5 +-
.../AtomicPutAllChangingTopologyTest.java | 212 +++++++++
.../near/GridNearCacheStoreUpdateTest.java | 466 +++++++++++++++++++
.../GridNearOffheapCacheStoreUpdateTest.java | 35 ++
.../cache/query/IndexingSpiQuerySelfTest.java | 69 ++-
.../IndexingSpiQueryWithH2IndexingSelfTest.java | 36 ++
.../tcp/TcpCommunicationSpiDropNodesTest.java | 322 +++++++++++++
.../TcpCommunicationSpiFaultyClientTest.java | 270 +++++++++++
.../ignite/testframework/GridTestNode.java | 1 +
.../testframework/junits/GridAbstractTest.java | 2 +
.../IgniteCacheFailoverTestSuite.java | 3 +
.../testsuites/IgniteCacheTestSuite2.java | 7 +
.../IgniteSpiCommunicationSelfTestSuite.java | 5 +
.../IgniteSpiDiscoverySelfTestSuite.java | 2 +-
.../processors/query/h2/IgniteH2Indexing.java | 30 +-
...CacheScanPartitionQueryFallbackSelfTest.java | 2 +-
.../cache/IgniteCacheAbstractQuerySelfTest.java | 295 +++++++++++-
.../IgniteCachePartitionedQuerySelfTest.java | 85 ++++
.../h2/GridIndexingSpiAbstractSelfTest.java | 29 +-
66 files changed, 3159 insertions(+), 550 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index 719cf38,f05d90d..04ca50c
--- 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
@@@ -473,20 -475,22 +475,22 @@@ public abstract class IgniteTxLocalAdap
CacheObject cacheVal = cacheCtx.toCacheObject(val);
while (true) {
- GridCacheEntryEx entry = cacheCtx.cache().entryEx(key);
+ GridCacheEntryEx entry = cacheCtx.cache().entryEx(key, topVer);
try {
- GridCacheVersion setVer = entry.versionedValue(cacheVal, ver, null);
-
- boolean set = setVer != null;
+ T2<CacheObject, GridCacheVersion> verVal = entry.versionedValue(cacheVal,
+ ver,
+ null,
+ null);
- if (set)
- ver = setVer;
+ if (log.isDebugEnabled()) {
+ log.debug("Set value loaded from store into entry [" +
+ "oldVer=" + ver +
+ ", newVer=" + verVal.get2() +
+ ", entry=" + entry + ']');
+ }
- if (log.isDebugEnabled())
- log.debug("Set value loaded from store into entry [set=" + set +
- ", curVer=" + ver + ", newVer=" + setVer + ", " +
- "entry=" + entry + ']');
+ ver = verVal.get2();
break;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryIndexing.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryTypeDescriptor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiCommunicationSelfTestSuite.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
----------------------------------------------------------------------
diff --cc modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
index 9037943,cbf2ebd..e375867
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
@@@ -1075,10 -1051,9 +1075,10 @@@ public class IgniteH2Indexing implement
final TableDescriptor tbl = tableDescriptor(spaceName, type);
if (tbl == null)
- throw new CacheException("Failed to find SQL table for type: " + type.name());
+ throw new IgniteSQLException("Failed to find SQL table for type: " + type.name(),
+ IgniteQueryErrorCode.TABLE_NOT_FOUND);
- String sql = generateQuery(qry, tbl);
+ String sql = generateQuery(qry, alias, tbl);
Connection conn = connectionForThread(tbl.schemaName());
http://git-wip-us.apache.org/repos/asf/ignite/blob/09ed1284/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/h2/GridIndexingSpiAbstractSelfTest.java
----------------------------------------------------------------------
[27/50] [abbrv] ignite git commit: IGNITE-4622 Fixed generation in
domain model for cache store.
Posted by vo...@apache.org.
IGNITE-4622 Fixed generation in domain model for cache store.
(cherry picked from commit 43007d5)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/898fa150
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/898fa150
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/898fa150
Branch: refs/heads/ignite-1.9
Commit: 898fa150c7e2a663685abf37c6d1bcd547910f0e
Parents: f5e601e
Author: Andrey Novikov <an...@gridgain.com>
Authored: Fri Jan 27 11:30:49 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Fri Jan 27 11:32:48 2017 +0700
----------------------------------------------------------------------
.../configuration/generator/ConfigurationGenerator.js | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/898fa150/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js b/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
index 8770bf6..abe361c 100644
--- a/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
+++ b/modules/web-console/frontend/app/modules/configuration/generator/ConfigurationGenerator.js
@@ -48,6 +48,10 @@ export default class IgniteConfigurationGenerator {
return new Bean('org.apache.ignite.cache.QueryEntity', 'qryEntity', domain, cacheDflts);
}
+ static domainJdbcTypeBean(domain) {
+ return new Bean('org.apache.ignite.cache.store.jdbc.JdbcType', 'type', domain);
+ }
+
static discoveryConfigurationBean(discovery) {
return new Bean('org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi', 'discovery', discovery, clusterDflts.discovery);
}
@@ -1383,7 +1387,7 @@ export default class IgniteConfigurationGenerator {
}
// Generate domain model for store group.
- static domainStore(domain, cfg = this.domainConfigurationBean(domain)) {
+ static domainStore(domain, cfg = this.domainJdbcTypeBean(domain)) {
cfg.stringProperty('databaseSchema')
.stringProperty('databaseTable');
@@ -1527,8 +1531,7 @@ export default class IgniteConfigurationGenerator {
if (_.isNil(domain.databaseTable))
return acc;
- const typeBean = new Bean('org.apache.ignite.cache.store.jdbc.JdbcType', 'type',
- _.merge({}, domain, {cacheName: cache.name}))
+ const typeBean = this.domainJdbcTypeBean(_.merge({}, domain, {cacheName: cache.name}))
.stringProperty('cacheName');
setType(typeBean, 'keyType');
[31/50] [abbrv] ignite git commit: IGNITE-1596 Fixed version sort.
Posted by vo...@apache.org.
IGNITE-1596 Fixed version sort.
(cherry picked from commit 128ba07)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/cfbe6e5d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/cfbe6e5d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/cfbe6e5d
Branch: refs/heads/ignite-1.9
Commit: cfbe6e5d4ab1ead118da474d86262ab614da88ad
Parents: 4d72bf8
Author: Andrey Novikov <an...@gridgain.com>
Authored: Wed Jan 25 16:48:05 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Feb 1 17:46:22 2017 +0700
----------------------------------------------------------------------
modules/web-console/backend/app/agent.js | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/cfbe6e5d/modules/web-console/backend/app/agent.js
----------------------------------------------------------------------
diff --git a/modules/web-console/backend/app/agent.js b/modules/web-console/backend/app/agent.js
index 791ea50..961253f 100644
--- a/modules/web-console/backend/app/agent.js
+++ b/modules/web-console/backend/app/agent.js
@@ -650,14 +650,14 @@ module.exports.factory = function(_, fs, path, JSZip, socketio, settings, mongo)
const bParts = b.split('.');
for (let i = 0; i < aParts.length; ++i) {
- if (bParts.length === i)
- return 1;
+ if (aParts[i] !== bParts[i])
+ return aParts[i] < bParts[i] ? 1 : -1;
+ }
- if (aParts[i] === aParts[i])
- continue;
+ if (aParts.length === bParts.length)
+ return 0;
- return aParts[i] > bParts[i] ? 1 : -1;
- }
+ return aParts.length < bParts.length ? 1 : -1;
}));
// Latest version of agent distribution.
[39/50] [abbrv] ignite git commit: Merge branch 'ignite-1.6.12' into
ignite-1.8.3
Posted by vo...@apache.org.
Merge branch 'ignite-1.6.12' into ignite-1.8.3
# Conflicts:
# modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/96b0f7f7
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/96b0f7f7
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/96b0f7f7
Branch: refs/heads/ignite-1.9
Commit: 96b0f7f79e85606e8cdfd9e85161453f8b8f85fa
Parents: 6e68f64 1859857
Author: devozerov <vo...@gridgain.com>
Authored: Mon Feb 6 15:14:39 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Mon Feb 6 15:14:39 2017 +0300
----------------------------------------------------------------------
----------------------------------------------------------------------
[29/50] [abbrv] ignite git commit: IGNITE-4548 CacheJdbcStore:
support mapping of enum types.
Posted by vo...@apache.org.
IGNITE-4548 CacheJdbcStore: support mapping of enum types.
(cherry picked from commit f1fca3a)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/92ceb7f7
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/92ceb7f7
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/92ceb7f7
Branch: refs/heads/ignite-1.9
Commit: 92ceb7f71e3ec1856c69fa464c8a8c848314a27e
Parents: 9d9e61f
Author: Vasiliy Sisko <vs...@gridgain.com>
Authored: Fri Jan 20 16:22:24 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Feb 1 17:43:17 2017 +0700
----------------------------------------------------------------------
.../store/jdbc/CacheAbstractJdbcStore.java | 12 +++++-
.../store/jdbc/JdbcTypesDefaultTransformer.java | 19 +++++++++
.../cache/store/jdbc/JdbcTypesTransformer.java | 17 ++++++++
.../CacheJdbcPojoStoreAbstractSelfTest.java | 23 +++++++----
.../store/jdbc/CacheJdbcPojoStoreTest.java | 3 ++
...eJdbcStoreAbstractMultithreadedSelfTest.java | 17 ++++----
.../ignite/cache/store/jdbc/model/Gender.java | 41 ++++++++++++++++++++
.../ignite/cache/store/jdbc/model/Person.java | 31 ++++++++++++++-
.../src/test/config/jdbc-pojo-store-builtin.xml | 8 ++++
.../src/test/config/jdbc-pojo-store-obj.xml | 8 ++++
10 files changed, 162 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/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 4bfd92b..e7ce526 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
@@ -80,6 +80,8 @@ import static java.sql.Statement.SUCCESS_NO_INFO;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_BATCH_SIZE;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_PARALLEL_LOAD_CACHE_MINIMUM_THRESHOLD;
import static org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory.DFLT_WRITE_ATTEMPTS;
+import static org.apache.ignite.cache.store.jdbc.JdbcTypesTransformer.NUMERIC_TYPES;
+import static org.apache.ignite.cache.store.jdbc.JdbcTypesTransformer.NUMERIC_TYPES;
/**
* Implementation of {@link CacheStore} backed by JDBC.
@@ -1393,8 +1395,15 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
fieldVal = fieldVal.toString();
break;
+ default:
+ // No-op.
}
}
+ else if (field.getJavaFieldType().isEnum() && fieldVal instanceof Enum) {
+ Enum val = (Enum)fieldVal;
+
+ fieldVal = NUMERIC_TYPES.contains(field.getDatabaseFieldType()) ? val.ordinal() : val.name();
+ }
stmt.setObject(idx, fieldVal);
}
@@ -2068,12 +2077,13 @@ public abstract class CacheAbstractJdbcStore<K, V> implements CacheStore<K, V>,
int idx = 1;
- for (Object key : keys)
+ for (Object key : keys) {
for (JdbcTypeField field : em.keyColumns()) {
Object fieldVal = extractParameter(em.cacheName, em.keyType(), em.keyKind(), field.getJavaFieldName(), key);
fillParameter(stmt, idx++, field, fieldVal);
}
+ }
ResultSet rs = stmt.executeQuery();
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
index c32eaa2..c387b77 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesDefaultTransformer.java
@@ -114,6 +114,25 @@ public class JdbcTypesDefaultTransformer implements JdbcTypesTransformer {
return UUID.fromString((String)res);
}
+ if (type.isEnum()) {
+ if (NUMERIC_TYPES.contains(rs.getMetaData().getColumnType(colIdx))) {
+ int ordinal = rs.getInt(colIdx);
+
+ Object[] values = type.getEnumConstants();
+
+ return rs.wasNull() || ordinal >= values.length ? null : values[ordinal];
+ }
+
+ String str = rs.getString(colIdx);
+
+ try {
+ return rs.wasNull() ? null : Enum.valueOf((Class<? extends Enum>) type, str.trim());
+ }
+ catch (IllegalArgumentException ignore) {
+ return null;
+ }
+ }
+
return rs.getObject(colIdx);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
index 76fb00b..fc0bc88 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/JdbcTypesTransformer.java
@@ -20,11 +20,28 @@ package org.apache.ignite.cache.store.jdbc;
import java.io.Serializable;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.util.List;
+import org.apache.ignite.internal.util.typedef.internal.U;
+
+import static java.sql.Types.BIGINT;
+import static java.sql.Types.DECIMAL;
+import static java.sql.Types.DOUBLE;
+import static java.sql.Types.FLOAT;
+import static java.sql.Types.INTEGER;
+import static java.sql.Types.NUMERIC;
+import static java.sql.Types.REAL;
+import static java.sql.Types.SMALLINT;
+import static java.sql.Types.TINYINT;
/**
* API for implementing custom mapping logic for loaded from store data.
*/
public interface JdbcTypesTransformer extends Serializable {
+ /** Numeric types. */
+ public final List<Integer> NUMERIC_TYPES =
+ U.sealList(TINYINT, SMALLINT, INTEGER, BIGINT, REAL, FLOAT, DOUBLE, NUMERIC, DECIMAL);
+
+
/**
* Retrieves the value of the designated column in the current row of this <code>ResultSet</code> object and
* will convert to the requested Java data type.
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
index 368a28e..1de44f7 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreAbstractSelfTest.java
@@ -30,6 +30,7 @@ import javax.cache.integration.CacheLoaderException;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.store.jdbc.dialect.H2Dialect;
import org.apache.ignite.cache.store.jdbc.model.Person;
+import org.apache.ignite.cache.store.jdbc.model.Gender;
import org.apache.ignite.cache.store.jdbc.model.PersonKey;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.ConnectorConfiguration;
@@ -112,7 +113,8 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
" id INTEGER PRIMARY KEY," +
" org_id INTEGER," +
" birthday DATE," +
- " name VARCHAR(50))");
+ " name VARCHAR(50)," +
+ " gender VARCHAR(50))");
conn.commit();
@@ -201,7 +203,8 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
new JdbcTypeField(Types.INTEGER, "ID", Integer.class, "id"),
new JdbcTypeField(Types.INTEGER, "ORG_ID", Integer.class, "orgId"),
new JdbcTypeField(Types.DATE, "BIRTHDAY", Date.class, "birthday"),
- new JdbcTypeField(Types.VARCHAR, "NAME", String.class, "name"));
+ new JdbcTypeField(Types.VARCHAR, "NAME", String.class, "name"),
+ new JdbcTypeField(Types.VARCHAR, "GENDER", Gender.class, "gender"));
return storeTypes;
}
@@ -260,7 +263,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
conn.commit();
PreparedStatement prnStmt = conn.prepareStatement(
- "INSERT INTO Person(id, org_id, birthday, name) VALUES (?, ?, ?, ?)");
+ "INSERT INTO Person(id, org_id, birthday, name, gender) VALUES (?, ?, ?, ?, ?)");
Random rnd = new Random();
@@ -269,6 +272,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
prnStmt.setInt(2, i % 100);
prnStmt.setDate(3, Date.valueOf(String.format("%d-%d-%d", 1970 + rnd.nextInt(50), 1 + rnd.nextInt(11), 1 + rnd.nextInt(27))));
prnStmt.setString(4, "name" + i);
+ prnStmt.setString(5, Gender.random().toString());
prnStmt.addBatch();
}
@@ -319,7 +323,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
protected void checkCacheLoadWithSql() {
IgniteCache<Object, Object> c1 = grid().cache(CACHE_NAME);
- c1.loadCache(null, "org.apache.ignite.cache.store.jdbc.model.PersonKey", "select id, org_id, name, birthday from Person");
+ c1.loadCache(null, "org.apache.ignite.cache.store.jdbc.model.PersonKey", "select id, org_id, name, birthday, gender from Person");
assertEquals(PERSON_CNT, c1.size());
}
@@ -397,7 +401,9 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
Connection conn = getConnection();
try {
- PreparedStatement stmt = conn.prepareStatement("SELECT ID, ORG_ID, BIRTHDAY, NAME FROM PERSON WHERE ID = ?");
+ Random rnd = new Random();
+
+ PreparedStatement stmt = conn.prepareStatement("SELECT ID, ORG_ID, BIRTHDAY, NAME, GENDER FROM PERSON WHERE ID = ?");
stmt.setInt(1, -1);
@@ -408,8 +414,9 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
U.closeQuiet(rs);
Date testDate = Date.valueOf("2001-05-05");
+ Gender testGender = Gender.random();
- Person val = new Person(-1, -2, testDate, "Person-to-test-put-insert", 999);
+ Person val = new Person(-1, -2, testDate, "Person-to-test-put-insert", 999, testGender);
Object key = builtinKeys ? Integer.valueOf(-1) : new PersonKey(-1);
@@ -424,6 +431,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
assertEquals(-2, rs.getInt(2));
assertEquals(testDate, rs.getDate(3));
assertEquals("Person-to-test-put-insert", rs.getString(4));
+ assertEquals(testGender.toString(), rs.getString(5));
assertFalse("Unexpected more data in result set", rs.next());
@@ -432,7 +440,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
// Test put-update.
testDate = Date.valueOf("2016-04-04");
- c1.put(key, new Person(-1, -3, testDate, "Person-to-test-put-update", 999));
+ c1.put(key, new Person(-1, -3, testDate, "Person-to-test-put-update", 999, testGender));
rs = stmt.executeQuery();
@@ -442,6 +450,7 @@ public abstract class CacheJdbcPojoStoreAbstractSelfTest extends GridCommonAbstr
assertEquals(-3, rs.getInt(2));
assertEquals(testDate, rs.getDate(3));
assertEquals("Person-to-test-put-update", rs.getString(4));
+ assertEquals(testGender.toString(), rs.getString(5));
assertFalse("Unexpected more data in result set", rs.next());
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
index 4a0b1da..849cab7 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcPojoStoreTest.java
@@ -25,6 +25,7 @@ import java.sql.Timestamp;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Random;
import java.util.UUID;
import java.util.concurrent.ConcurrentLinkedQueue;
import javax.cache.integration.CacheWriterException;
@@ -233,6 +234,8 @@ public class CacheJdbcPojoStoreTest extends GridAbstractCacheStoreSelfTest<Cache
public void testLoadCache() throws Exception {
Connection conn = store.openConnection(false);
+ Random rnd = new Random();
+
PreparedStatement orgStmt = conn.prepareStatement("INSERT INTO Organization(id, name, city) VALUES (?, ?, ?)");
for (int i = 0; i < ORGANIZATION_CNT; i++) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
index e831445..f1a321b 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/CacheJdbcStoreAbstractMultithreadedSelfTest.java
@@ -33,6 +33,7 @@ import java.util.concurrent.Callable;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.cache.CacheTypeMetadata;
+import org.apache.ignite.cache.store.jdbc.model.Gender;
import org.apache.ignite.cache.store.jdbc.model.Organization;
import org.apache.ignite.cache.store.jdbc.model.OrganizationKey;
import org.apache.ignite.cache.store.jdbc.model.Person;
@@ -208,7 +209,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
cache.put(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
cache.put(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, 1));
+ new Date(System.currentTimeMillis()), "Name" + id, 1, Gender.random()));
}
return null;
@@ -228,7 +229,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
cache.putIfAbsent(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
cache.putIfAbsent(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, i));
+ new Date(System.currentTimeMillis()), "Name" + id, i, Gender.random()));
}
return null;
@@ -268,7 +269,7 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
map.put(new OrganizationKey(id), new Organization(id, "Name" + id, "City" + id));
else
map.put(new PersonKey(id), new Person(id, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + id, 1));
+ new Date(System.currentTimeMillis()), "Name" + id, 1, Gender.random()));
}
IgniteCache<Object, Object> cache = jcache();
@@ -294,11 +295,11 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
try (Transaction tx = grid().transactions().txStart()) {
cache.put(new PersonKey(1), new Person(1, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 1, 1));
+ new Date(System.currentTimeMillis()), "Name" + 1, 1, Gender.random()));
cache.put(new PersonKey(2), new Person(2, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 2, 2));
+ new Date(System.currentTimeMillis()), "Name" + 2, 2, Gender.random()));
cache.put(new PersonKey(3), new Person(3, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 3, 3));
+ new Date(System.currentTimeMillis()), "Name" + 3, 3, Gender.random()));
cache.get(new PersonKey(1));
cache.get(new PersonKey(4));
@@ -306,9 +307,9 @@ public abstract class CacheJdbcStoreAbstractMultithreadedSelfTest<T extends Cach
Map<PersonKey, Person> map = U.newHashMap(2);
map.put(new PersonKey(5), new Person(5, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 5, 5));
+ new Date(System.currentTimeMillis()), "Name" + 5, 5, Gender.random()));
map.put(new PersonKey(6), new Person(6, rnd.nextInt(),
- new Date(System.currentTimeMillis()), "Name" + 6, 6));
+ new Date(System.currentTimeMillis()), "Name" + 6, 6, Gender.random()));
cache.putAll(map);
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
new file mode 100644
index 0000000..8ddb0e2
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Gender.java
@@ -0,0 +1,41 @@
+/*
+ * 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.cache.store.jdbc.model;
+
+import java.io.Serializable;
+import java.util.Random;
+
+/**
+ * Person gender enum.
+ */
+public enum Gender implements Serializable {
+ /** */
+ MALE,
+ /** */
+ FEMALE;
+
+ /** */
+ private static final Random RAND = new Random();
+
+ /**
+ * Used for testing purposes.
+ */
+ public static Gender random() {
+ return values()[RAND.nextInt(values().length)];
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
index 52ddfc8..89258b4 100644
--- a/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
+++ b/modules/core/src/test/java/org/apache/ignite/cache/store/jdbc/model/Person.java
@@ -44,6 +44,9 @@ public class Person implements Serializable {
/** Value for salary. */
private Integer salary;
+ /** Value of person gender. */
+ private Gender gender;
+
/**
* Empty constructor.
*/
@@ -59,13 +62,15 @@ public class Person implements Serializable {
Integer orgId,
Date birthday,
String name,
- Integer salary
+ Integer salary,
+ Gender gender
) {
this.id = id;
this.orgId = orgId;
this.birthday = birthday;
this.name = name;
this.salary = salary;
+ this.gender = gender;
}
/**
@@ -159,6 +164,24 @@ public class Person implements Serializable {
this.salary = salary;
}
+ /**
+ * Gets gender.
+ *
+ * @return Gender.
+ */
+ public Gender getGender() {
+ return gender;
+ }
+
+ /**
+ * Sets gender.
+ *
+ * @param gender New value for gender.
+ */
+ public void setGender(Gender gender) {
+ this.gender = gender;
+ }
+
/** {@inheritDoc} */
@Override public boolean equals(Object o) {
if (this == o)
@@ -178,6 +201,9 @@ public class Person implements Serializable {
if (name != null ? !name.equals(that.name) : that.name != null)
return false;
+ if (gender != null ? !gender.equals(that.gender) : that.gender != null)
+ return false;
+
return true;
}
@@ -189,6 +215,8 @@ public class Person implements Serializable {
res = 31 * res + (name != null ? name.hashCode() : 0);
+ res = 31 * res + (gender != null ? gender.hashCode() : 0);
+
return res;
}
@@ -198,6 +226,7 @@ public class Person implements Serializable {
", orgId=" + orgId +
", birthday=" + (birthday == null ? null : birthday.getTime()) +
", name=" + name +
+ ", gender=" + gender +
"]";
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
----------------------------------------------------------------------
diff --git a/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml b/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
index dfaf828..bfb109c 100644
--- a/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
+++ b/modules/spring/src/test/config/jdbc-pojo-store-builtin.xml
@@ -151,6 +151,14 @@
<property name="javaFieldName" value="orgId"/>
<property name="javaFieldType" value="java.lang.Integer"/>
</bean>
+ <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
+ <property name="databaseFieldName" value="GENDER"/>
+ <property name="databaseFieldType">
+ <util:constant static-field="java.sql.Types.VARCHAR"/>
+ </property>
+ <property name="javaFieldName" value="gender"/>
+ <property name="javaFieldType" value="org.apache.ignite.cache.store.jdbc.model.Gender"/>
+ </bean>
</list>
</property>
</bean>
http://git-wip-us.apache.org/repos/asf/ignite/blob/92ceb7f7/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
----------------------------------------------------------------------
diff --git a/modules/spring/src/test/config/jdbc-pojo-store-obj.xml b/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
index 9bc9977..40a14dc 100644
--- a/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
+++ b/modules/spring/src/test/config/jdbc-pojo-store-obj.xml
@@ -151,6 +151,14 @@
<property name="javaFieldName" value="orgId"/>
<property name="javaFieldType" value="java.lang.Integer"/>
</bean>
+ <bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
+ <property name="databaseFieldName" value="GENDER"/>
+ <property name="databaseFieldType">
+ <util:constant static-field="java.sql.Types.VARCHAR"/>
+ </property>
+ <property name="javaFieldName" value="gender"/>
+ <property name="javaFieldType" value="org.apache.ignite.cache.store.jdbc.model.Gender"/>
+ </bean>
</list>
</property>
</bean>
[30/50] [abbrv] ignite git commit: IGNITE-4520 Added credential
request for authentication on proxy.
Posted by vo...@apache.org.
IGNITE-4520 Added credential request for authentication on proxy.
(cherry picked from commit ef04f35)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4d72bf8b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4d72bf8b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4d72bf8b
Branch: refs/heads/ignite-1.9
Commit: 4d72bf8bd47d87f846178f3c0e4e8df8b17d3094
Parents: 92ceb7f
Author: Andrey Novikov <an...@gridgain.com>
Authored: Wed Jan 25 13:58:57 2017 +0700
Committer: Andrey Novikov <an...@gridgain.com>
Committed: Wed Feb 1 17:46:10 2017 +0700
----------------------------------------------------------------------
.../web-agent/bin/ignite-web-agent.bat | 4 +-
.../web-agent/bin/ignite-web-agent.sh | 2 +
.../ignite/console/agent/AgentLauncher.java | 90 ++++++++++++++++++--
3 files changed, 88 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/4d72bf8b/modules/web-console/web-agent/bin/ignite-web-agent.bat
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/bin/ignite-web-agent.bat b/modules/web-console/web-agent/bin/ignite-web-agent.bat
index 8291b55..1f1b52d 100644
--- a/modules/web-console/web-agent/bin/ignite-web-agent.bat
+++ b/modules/web-console/web-agent/bin/ignite-web-agent.bat
@@ -60,7 +60,9 @@ if %ERRORLEVEL% equ 0 (
if "%JVM_OPTS%" == "" set JVM_OPTS=-Xms1g -Xmx1g -server -XX:+AggressiveOpts -XX:MaxMetaspaceSize=256m
)
-"%JAVA_HOME%\bin\java.exe" %JVM_OPTS% -cp "*" org.apache.ignite.console.agent.AgentLauncher %*
+set JVM_OPTS=%JVM_OPTS% -Djava.net.useSystemProxies=true
+
+"%JAVA_HOME%\bin\java.exe" %JVM_OPTS% -cp "*" org.apache.ignite.console.agent.AgentLauncher %*
set JAVA_ERRORLEVEL=%ERRORLEVEL%
http://git-wip-us.apache.org/repos/asf/ignite/blob/4d72bf8b/modules/web-console/web-agent/bin/ignite-web-agent.sh
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/bin/ignite-web-agent.sh b/modules/web-console/web-agent/bin/ignite-web-agent.sh
index 2e9f041..c2958fc 100644
--- a/modules/web-console/web-agent/bin/ignite-web-agent.sh
+++ b/modules/web-console/web-agent/bin/ignite-web-agent.sh
@@ -88,4 +88,6 @@ if [ -z "$JVM_OPTS" ] ; then
fi
fi
+JVM_OPTS="${JVM_OPTS} -Djava.net.useSystemProxies=true"
+
"$JAVA" ${JVM_OPTS} -cp "*" org.apache.ignite.console.agent.AgentLauncher "$@"
http://git-wip-us.apache.org/repos/asf/ignite/blob/4d72bf8b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
----------------------------------------------------------------------
diff --git a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
index 0c03d77..049791f 100644
--- a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
+++ b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/AgentLauncher.java
@@ -25,11 +25,15 @@ import io.socket.client.Socket;
import io.socket.emitter.Emitter;
import java.io.File;
import java.io.IOException;
+import java.net.Authenticator;
import java.net.ConnectException;
+import java.net.PasswordAuthentication;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.net.UnknownHostException;
import java.util.Arrays;
+import java.util.Scanner;
import java.util.concurrent.CountDownLatch;
import java.util.jar.Attributes;
import java.util.jar.Manifest;
@@ -76,9 +80,6 @@ public class AgentLauncher {
/** */
private static final String EVENT_AGENT_CLOSE = "agent:close";
- /** */
- private static final int RECONNECT_INTERVAL = 3000;
-
/**
* Create a trust manager that trusts all certificates It is not using a particular keyStore
*/
@@ -121,6 +122,15 @@ public class AgentLauncher {
System.exit(1);
}
+ ignore = X.cause(e, UnknownHostException.class);
+
+ if (ignore != null) {
+ log.error("Failed to establish connection to server, due to errors with DNS or missing proxy settings.");
+ log.error("Documentation for proxy configuration can be found here: http://apacheignite.readme.io/docs/web-agent#section-proxy-configuration");
+
+ System.exit(1);
+ }
+
ignore = X.cause(e, IOException.class);
if (ignore != null && "404".equals(ignore.getMessage())) {
@@ -129,6 +139,29 @@ public class AgentLauncher {
return;
}
+ if (ignore != null && "407".equals(ignore.getMessage())) {
+ log.error("Failed to establish connection to server, due to proxy requires authentication.");
+
+ String userName = System.getProperty("https.proxyUsername", System.getProperty("http.proxyUsername"));
+
+ if (userName == null || userName.trim().isEmpty())
+ userName = readLine("Enter proxy user name: ");
+ else
+ System.out.println("Read username from system properties: " + userName);
+
+ char[] pwd = readPassword("Enter proxy password: ");
+
+ final PasswordAuthentication pwdAuth = new PasswordAuthentication(userName, pwd);
+
+ Authenticator.setDefault(new Authenticator() {
+ @Override protected PasswordAuthentication getPasswordAuthentication() {
+ return pwdAuth;
+ }
+ });
+
+ return;
+ }
+
log.error("Connection error.", e);
}
}
@@ -144,6 +177,32 @@ public class AgentLauncher {
};
/**
+ * @param fmt Format string.
+ * @param args Arguments.
+ */
+ private static String readLine(String fmt, Object ... args) {
+ if (System.console() != null)
+ return System.console().readLine(fmt, args);
+
+ System.out.print(String.format(fmt, args));
+
+ return new Scanner(System.in).nextLine();
+ }
+
+ /**
+ * @param fmt Format string.
+ * @param args Arguments.
+ */
+ private static char[] readPassword(String fmt, Object ... args) {
+ if (System.console() != null)
+ return System.console().readPassword(fmt, args);
+
+ System.out.print(String.format(fmt, args));
+
+ return new Scanner(System.in).nextLine().toCharArray();
+ }
+
+ /**
* @param args Args.
*/
@SuppressWarnings("BusyWait")
@@ -214,9 +273,9 @@ public class AgentLauncher {
System.out.println("Security token is required to establish connection to the web console.");
System.out.println(String.format("It is available on the Profile page: https://%s/profile", webHost));
- System.out.print("Enter security tokens separated by comma: ");
+ String tokens = String.valueOf(readPassword("Enter security tokens separated by comma: "));
- cfg.tokens(Arrays.asList(System.console().readLine().trim().split(",")));
+ cfg.tokens(Arrays.asList(tokens.trim().split(",")));
}
final RestHandler restHnd = new RestHandler(cfg);
@@ -226,12 +285,29 @@ public class AgentLauncher {
URI uri = URI.create(cfg.serverUri());
+ // Create proxy authenticator using passed properties.
+ switch (uri.getScheme()) {
+ case "http":
+ case "https":
+ final String username = System.getProperty(uri.getScheme() + ".proxyUsername");
+ final char[] pwd = System.getProperty(uri.getScheme() + ".proxyPassword", "").toCharArray();
+
+ Authenticator.setDefault(new Authenticator() {
+ @Override protected PasswordAuthentication getPasswordAuthentication() {
+ return new PasswordAuthentication(username, pwd);
+ }
+ });
+
+ break;
+
+ default:
+ // No-op.
+ }
+
IO.Options opts = new IO.Options();
opts.path = "/agents";
- opts.reconnectionDelay = RECONNECT_INTERVAL;
-
// Workaround for use self-signed certificate
if (Boolean.getBoolean("trust.all")) {
SSLContext ctx = SSLContext.getInstance("TLS");