Repository: ignite
Updated Branches:
  refs/heads/master 4ef96dd75 -> da9076933


IGNITE-8568 Added support for "Collocated" query mode.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/da907693
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/da907693
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/da907693

Branch: refs/heads/master
Commit: da907693316674d22ab5a44162531f48f111f980
Parents: 4ef96dd
Author: Vasiliy Sisko <[email protected]>
Authored: Wed May 30 16:55:46 2018 +0700
Committer: Alexey Kuznetsov <[email protected]>
Committed: Wed May 30 16:55:46 2018 +0700

----------------------------------------------------------------------
 .../internal/visor/query/VisorQueryTask.java    |  1 +
 .../internal/visor/query/VisorQueryTaskArg.java | 69 ++++++++++++++++++--
 2 files changed, 64 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/da907693/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTask.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTask.java
index 2e32276..b5af1b0 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTask.java
@@ -79,6 +79,7 @@ public class VisorQueryTask extends 
VisorOneNodeTask<VisorQueryTaskArg, VisorEit
                 qry.setPageSize(arg.getPageSize());
                 qry.setLocal(arg.isLocal());
                 qry.setDistributedJoins(arg.isDistributedJoins());
+                qry.setCollocated(arg.isCollocated());
                 qry.setEnforceJoinOrder(arg.isEnforceJoinOrder());
                 qry.setReplicatedOnly(arg.isReplicatedOnly());
                 qry.setLazy(arg.getLazy());

http://git-wip-us.apache.org/repos/asf/ignite/blob/da907693/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTaskArg.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTaskArg.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTaskArg.java
index e942880..5220b02 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTaskArg.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryTaskArg.java
@@ -55,6 +55,9 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
     /** Lazy query execution flag */
     private boolean lazy;
 
+    /** Collocation flag. */
+    private boolean collocated;
+
     /**
      * Default constructor.
      */
@@ -71,9 +74,16 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
      * @param loc Flag whether to execute query locally.
      * @param pageSize Result batch size.
      */
-    public VisorQueryTaskArg(String cacheName, String qryTxt, boolean 
distributedJoins,
-        boolean enforceJoinOrder, boolean replicatedOnly, boolean loc, int 
pageSize) {
-        this(cacheName, qryTxt, distributedJoins, enforceJoinOrder, 
replicatedOnly, loc, pageSize, false);
+    public VisorQueryTaskArg(
+        String cacheName,
+        String qryTxt,
+        boolean distributedJoins,
+        boolean enforceJoinOrder,
+        boolean replicatedOnly,
+        boolean loc,
+        int pageSize
+    ) {
+        this(cacheName, qryTxt, distributedJoins, enforceJoinOrder, 
replicatedOnly, loc, pageSize, false, false);
     }
 
     /**
@@ -86,8 +96,41 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
      * @param pageSize Result batch size.
      * @param lazy Lazy query execution flag.
      */
-    public VisorQueryTaskArg(String cacheName, String qryTxt, boolean 
distributedJoins,
-        boolean enforceJoinOrder, boolean replicatedOnly, boolean loc, int 
pageSize, boolean lazy) {
+    public VisorQueryTaskArg(
+        String cacheName,
+        String qryTxt,
+        boolean distributedJoins,
+        boolean enforceJoinOrder,
+        boolean replicatedOnly,
+        boolean loc,
+        int pageSize,
+        boolean lazy
+    ) {
+        this(cacheName, qryTxt, distributedJoins, enforceJoinOrder, 
replicatedOnly, loc, pageSize, lazy, false);
+    }
+
+    /**
+     * @param cacheName Cache name for query.
+     * @param qryTxt Query text.
+     * @param distributedJoins If {@code true} then distributed joins enabled.
+     * @param enforceJoinOrder If {@code true} then enforce join order.
+     * @param replicatedOnly {@code true} then query contains only replicated 
tables.
+     * @param loc Flag whether to execute query locally.
+     * @param pageSize Result batch size.
+     * @param lazy Lazy query execution flag.
+     * @param collocated Collocation flag.
+     */
+    public VisorQueryTaskArg(
+        String cacheName,
+        String qryTxt,
+        boolean distributedJoins,
+        boolean enforceJoinOrder,
+        boolean replicatedOnly,
+        boolean loc,
+        int pageSize,
+        boolean lazy,
+        boolean collocated
+    ) {
         this.cacheName = cacheName;
         this.qryTxt = qryTxt;
         this.distributedJoins = distributedJoins;
@@ -96,6 +139,7 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
         this.loc = loc;
         this.pageSize = pageSize;
         this.lazy = lazy;
+        this.collocated = collocated;
     }
 
     /**
@@ -156,9 +200,18 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
         return lazy;
     }
 
+    /**
+     * Flag indicating if this query is collocated.
+     *
+     * @return {@code true} If the query is collocated.
+     */
+    public boolean isCollocated() {
+        return collocated;
+    }
+
     /** {@inheritDoc} */
     @Override public byte getProtocolVersion() {
-        return V2;
+        return V3;
     }
 
     /** {@inheritDoc} */
@@ -170,6 +223,7 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
         out.writeBoolean(loc);
         out.writeInt(pageSize);
         out.writeBoolean(lazy);
+        out.writeBoolean(collocated);
     }
 
     /** {@inheritDoc} */
@@ -183,6 +237,9 @@ public class VisorQueryTaskArg extends 
VisorDataTransferObject {
 
         if (protoVer > V1)
             lazy = in.readBoolean();
+
+        if (protoVer > V2)
+            collocated = in.readBoolean();
     }
 
     /** {@inheritDoc} */

Reply via email to