You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "mkhludnev (via GitHub)" <gi...@apache.org> on 2023/04/07 09:49:14 UTC

[GitHub] [solr] mkhludnev opened a new pull request, #1550: True cluster join

mkhludnev opened a new pull request, #1550:
URL: https://github.com/apache/solr/pull/1550

   https://issues.apache.org/jira/browse/SOLR-16717
   <!--
   _(If you are a project committer then you may remove some/all of the following template.)_
   
   Before creating a pull request, please file an issue in the ASF Jira system for Solr:
   
   * https://issues.apache.org/jira/projects/SOLR
   
   For something minor (i.e. that wouldn't be worth putting in release notes), you can skip JIRA. 
   To create a Jira issue, you will need to create an account there first.
   
   The title of the PR should reference the Jira issue number in the form:
   
   * SOLR-####: <short description of problem or changes>
   
   SOLR must be fully capitalized. A short description helps people scanning pull requests for items they can work on.
   
   Properly referencing the issue in the title ensures that Jira is correctly updated with code review comments and commits. -->
   
   
   # Description
   
   Please provide a short description of the changes you're making with this pull request.
   
   # Solution
   
   Please provide a short description of the approach taken to implement your solution.
   
   # Tests
   
   Please describe the tests you've developed or run to confirm this patch implements the feature or solves the problem.
   
   # Checklist
   
   Please review the following and check all that apply:
   
   - [ ] I have reviewed the guidelines for [How to Contribute](https://wiki.apache.org/solr/HowToContribute) and my code conforms to the standards described there to the best of my ability.
   - [ ] I have created a Jira issue and added the issue ID to my pull request title.
   - [ ] I have given Solr maintainers [access](https://help.github.com/en/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork) to contribute to my PR branch. (optional but recommended)
   - [ ] I have developed this patch against the `main` branch.
   - [ ] I have run `./gradlew check`.
   - [ ] I have added tests for my changes.
   - [ ] I have added documentation for the [Reference Guide](https://github.com/apache/solr/tree/main/solr/solr-ref-guide)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a diff in pull request #1550: True cluster join

Posted by "sonatype-lift[bot] (via GitHub)" <gi...@apache.org>.
sonatype-lift[bot] commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1161101152


##########
solr/core/src/java/org/apache/solr/search/join/ScoreJoinQParserPlugin.java:
##########
@@ -262,7 +271,8 @@ private Query createQuery(
         if (fromIndex != null && (!fromIndex.equals(myCore) || byPassShortCircutCheck)) {
           CoreContainer container = req.getCoreContainer();
 
-          final String coreName = getCoreName(fromIndex, container);
+          final String coreName =
+              getCoreName(fromIndex, container, req.getCore(), toField, fromField);

Review Comment:
   I've recorded this as ignored for this pull request.
   If you change your mind, just comment `@sonatype-lift unignore`.



##########
solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java:
##########
@@ -153,7 +153,9 @@ JoinParams parseJoin(QParser qparser) throws SyntaxError {
         CoreContainer container = qparser.req.getCoreContainer();
 
         // if in SolrCloud mode, fromIndex should be the name of a single-sharded collection
-        coreName = ScoreJoinQParserPlugin.getCoreName(fromIndex, container);
+        coreName =
+            ScoreJoinQParserPlugin.getCoreName(

Review Comment:
   I've recorded this as ignored for this pull request.
   If you change your mind, just comment `@sonatype-lift unignore`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a diff in pull request #1550: True cluster join

Posted by "sonatype-lift[bot] (via GitHub)" <gi...@apache.org>.
sonatype-lift[bot] commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1160638080


##########
solr/core/src/java/org/apache/solr/cluster/placement/plugins/AffinityPlacementFactory.java:
##########
@@ -357,6 +372,35 @@ public List<PlacementPlan> computePlacements(
       return placementPlans;
     }
 
+    private NodePicker createNodePicker(
+        PlacementContext placementContext, PlacementRequest request, AttributeValues attrValues)
+        throws PlacementException {
+      if (withCollectionShards.containsKey(request.getCollection().getName())) {
+
+        final Set<String> shardNames = request.getCollection().getShardNames();
+        Map<String, NodePicker> byShards = new LinkedHashMap<>(shardNames.size());
+        for (String shardName : shardNames) {
+          byShards.put(
+              shardName,
+              new DefaultNodePicker(
+                  placementContext, request, withCollectionShards, shardName, attrValues));
+        }
+        return new NodePicker() {
+          @Override
+          public Set<String> getZonesFromNodes(String shardName) {
+            return byShards.get(shardName).getZonesFromNodes(shardName);
+          }
+
+          @Override
+          public Set<Node> getCandidateNodes(String shardName, Replica.ReplicaType replicaType) {
+            return byShards.get(shardName).getCandidateNodes(shardName, replicaType);

Review Comment:
   <picture><img alt="5% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/5/display.svg"></picture>
   
   <b>*NULLPTR_DEREFERENCE:</b>*  null (last assigned on line 396) is dereferenced.
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   
   
   ---
   
   <b>Help us improve LIFT! (<i>Sonatype LiftBot external survey</i>)</b>
   
   Was this a good recommendation for you? <sub><small>Answering this survey will not impact your Lift settings.</small></sub>
   
   [ [🙁 Not relevant](https://www.sonatype.com/lift-comment-rating?comment=480691524&lift_comment_rating=1) ] - [ [😕 Won't fix](https://www.sonatype.com/lift-comment-rating?comment=480691524&lift_comment_rating=2) ] - [ [😑 Not critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480691524&lift_comment_rating=3) ] - [ [🙂 Critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480691524&lift_comment_rating=4) ] - [ [😊 Critical, fixing now](https://www.sonatype.com/lift-comment-rating?comment=480691524&lift_comment_rating=5) ]



##########
solr/core/src/java/org/apache/solr/cluster/placement/plugins/AffinityPlacementFactory.java:
##########
@@ -357,6 +372,35 @@ public List<PlacementPlan> computePlacements(
       return placementPlans;
     }
 
+    private NodePicker createNodePicker(
+        PlacementContext placementContext, PlacementRequest request, AttributeValues attrValues)
+        throws PlacementException {
+      if (withCollectionShards.containsKey(request.getCollection().getName())) {
+
+        final Set<String> shardNames = request.getCollection().getShardNames();
+        Map<String, NodePicker> byShards = new LinkedHashMap<>(shardNames.size());
+        for (String shardName : shardNames) {
+          byShards.put(
+              shardName,
+              new DefaultNodePicker(
+                  placementContext, request, withCollectionShards, shardName, attrValues));
+        }
+        return new NodePicker() {
+          @Override
+          public Set<String> getZonesFromNodes(String shardName) {
+            return byShards.get(shardName).getZonesFromNodes(shardName);

Review Comment:
   <picture><img alt="5% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/5/display.svg"></picture>
   
   <b>*NULLPTR_DEREFERENCE:</b>*  null (last assigned on line 391) is dereferenced.
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   
   
   ---
   
   <b>Help us improve LIFT! (<i>Sonatype LiftBot external survey</i>)</b>
   
   Was this a good recommendation for you? <sub><small>Answering this survey will not impact your Lift settings.</small></sub>
   
   [ [🙁 Not relevant](https://www.sonatype.com/lift-comment-rating?comment=480692044&lift_comment_rating=1) ] - [ [😕 Won't fix](https://www.sonatype.com/lift-comment-rating?comment=480692044&lift_comment_rating=2) ] - [ [😑 Not critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692044&lift_comment_rating=3) ] - [ [🙂 Critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692044&lift_comment_rating=4) ] - [ [😊 Critical, fixing now](https://www.sonatype.com/lift-comment-rating?comment=480692044&lift_comment_rating=5) ]



##########
solr/core/src/java/org/apache/solr/search/join/ScoreJoinQParserPlugin.java:
##########
@@ -262,7 +271,8 @@ private Query createQuery(
         if (fromIndex != null && (!fromIndex.equals(myCore) || byPassShortCircutCheck)) {
           CoreContainer container = req.getCoreContainer();
 
-          final String coreName = getCoreName(fromIndex, container);
+          final String coreName =
+              getCoreName(fromIndex, container, req.getCore(), toField, fromField);

Review Comment:
   <picture><img alt="14% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/14/display.svg"></picture>
   
   <b>*NULL_DEREFERENCE:</b>*  object `container` last assigned on line 272 could be null and is dereferenced by call to `getCoreName(...)` at line 275.
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   
   
   ---
   
   <b>Help us improve LIFT! (<i>Sonatype LiftBot external survey</i>)</b>
   
   Was this a good recommendation for you? <sub><small>Answering this survey will not impact your Lift settings.</small></sub>
   
   [ [🙁 Not relevant](https://www.sonatype.com/lift-comment-rating?comment=480692038&lift_comment_rating=1) ] - [ [😕 Won't fix](https://www.sonatype.com/lift-comment-rating?comment=480692038&lift_comment_rating=2) ] - [ [😑 Not critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692038&lift_comment_rating=3) ] - [ [🙂 Critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692038&lift_comment_rating=4) ] - [ [😊 Critical, fixing now](https://www.sonatype.com/lift-comment-rating?comment=480692038&lift_comment_rating=5) ]



##########
solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java:
##########
@@ -153,7 +153,9 @@ JoinParams parseJoin(QParser qparser) throws SyntaxError {
         CoreContainer container = qparser.req.getCoreContainer();
 
         // if in SolrCloud mode, fromIndex should be the name of a single-sharded collection
-        coreName = ScoreJoinQParserPlugin.getCoreName(fromIndex, container);
+        coreName =
+            ScoreJoinQParserPlugin.getCoreName(

Review Comment:
   <picture><img alt="14% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/14/display.svg"></picture>
   
   <b>*NULL_DEREFERENCE:</b>*  object `container` last assigned on line 153 could be null and is dereferenced by call to `getCoreName(...)` at line 157.
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   
   
   ---
   
   <b>Help us improve LIFT! (<i>Sonatype LiftBot external survey</i>)</b>
   
   Was this a good recommendation for you? <sub><small>Answering this survey will not impact your Lift settings.</small></sub>
   
   [ [🙁 Not relevant](https://www.sonatype.com/lift-comment-rating?comment=480692397&lift_comment_rating=1) ] - [ [😕 Won't fix](https://www.sonatype.com/lift-comment-rating?comment=480692397&lift_comment_rating=2) ] - [ [😑 Not critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692397&lift_comment_rating=3) ] - [ [🙂 Critical, will fix](https://www.sonatype.com/lift-comment-rating?comment=480692397&lift_comment_rating=4) ] - [ [😊 Critical, fixing now](https://www.sonatype.com/lift-comment-rating?comment=480692397&lift_comment_rating=5) ]



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a diff in pull request #1550: True cluster join

Posted by "sonatype-lift[bot] (via GitHub)" <gi...@apache.org>.
sonatype-lift[bot] commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1181098995


##########
solr/core/src/java/org/apache/solr/search/join/ScoreJoinQParserPlugin.java:
##########
@@ -262,7 +274,8 @@ private Query createQuery(
         if (fromIndex != null && (!fromIndex.equals(myCore) || byPassShortCircutCheck)) {
           CoreContainer container = req.getCoreContainer();
 
-          final String coreName = getCoreName(fromIndex, container);
+          final String coreName =
+              getCoreName(fromIndex, container, req.getCore(), toField, fromField, localParams);

Review Comment:
   <picture><img alt="16% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/16/display.svg"></picture>
   
   <b>*NULL_DEREFERENCE:</b>*  object `container` last assigned on line 275 could be null and is dereferenced by call to `getCoreName(...)` at line 278.
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   



##########
solr/core/src/java/org/apache/solr/search/join/ScoreJoinQParserPlugin.java:
##########
@@ -355,43 +379,168 @@ private static String resolveAlias(String fromIndex, ZkController zkController)
     }
   }
 
-  private static String findLocalReplicaForFromIndex(ZkController zkController, String fromIndex) {
-    String fromReplica = null;
-
-    String nodeName = zkController.getNodeName();
-    for (Slice slice :
-        zkController.getClusterState().getCollection(fromIndex).getActiveSlicesArr()) {
-      if (fromReplica != null)
-        throw new SolrException(
-            SolrException.ErrorCode.BAD_REQUEST,
-            "SolrCloud join: To join with a sharded collection, use method=crossCollection.");
-
-      for (Replica replica : slice.getReplicas()) {
-        if (replica.getNodeName().equals(nodeName)) {
-          fromReplica = replica.getStr(ZkStateReader.CORE_NAME_PROP);
-          // found local replica, but is it Active?
-          if (replica.getState() != Replica.State.ACTIVE)
-            throw new SolrException(
-                SolrException.ErrorCode.BAD_REQUEST,
-                "SolrCloud join: "
-                    + fromIndex
-                    + " has a local replica ("
-                    + fromReplica
-                    + ") on "
-                    + nodeName
-                    + ", but it is "
-                    + replica.getState());
+  @SuppressWarnings("unchecked")
+  private static String findLocalReplicaForFromIndex(
+      ZkController zkController,
+      String fromIndex,
+      SolrCore toCore,
+      String toField,
+      String fromField,
+      SolrParams localParams) {
+    final DocCollection fromCollection = zkController.getClusterState().getCollection(fromIndex);
+    final String nodeName = zkController.getNodeName();
+    final String hitTheRoad =
+        "SolrCloud join: To join with a collection that might not be co-located, use method=crossCollection.";
+    if (fromCollection.getSlices().size() == 1) {
+      String fromReplica = null;
+
+      for (Slice slice : fromCollection.getActiveSlicesArr()) {
+        if (fromReplica != null)
+          throw new SolrException(SolrException.ErrorCode.BAD_REQUEST, hitTheRoad);
+
+        for (Replica replica : slice.getReplicas()) {
+          if (replica.getNodeName().equals(nodeName)) {
+            fromReplica = replica.getStr(ZkStateReader.CORE_NAME_PROP);
+            // found local replica, but is it Active?
+            if (replica.getState() != Replica.State.ACTIVE)
+              throw new SolrException(
+                  SolrException.ErrorCode.BAD_REQUEST,
+                  "SolrCloud join: "
+                      + fromIndex
+                      + " has a local replica ("
+                      + fromReplica
+                      + ") on "
+                      + nodeName
+                      + ", but it is "
+                      + replica.getState());
+
+            break;
+          }
+        }
+      }
 
+      if (fromReplica == null)
+        throw new SolrException(SolrException.ErrorCode.BAD_REQUEST, hitTheRoad);
+
+      return fromReplica;
+    } else { // sharded from
+      final CloudDescriptor toCoreDescriptor = toCore.getCoreDescriptor().getCloudDescriptor();
+      final String toShardId = toCoreDescriptor.getShardId();
+      final DocCollection toCollection =
+          zkController.getClusterState().getCollection(toCoreDescriptor.getCollectionName());
+
+      String routerName = checkRouters(toCollection, fromCollection, hitTheRoad);
+      boolean checkField = false;
+      switch (routerName) {

Review Comment:
   <picture><img alt="4% of developers fix this issue" src="https://lift.sonatype.com/api/commentimage/fixrate/4/display.svg"></picture>
   
   <b>*[UNSAFE_HASH_EQUALS](https://find-sec-bugs.github.io/bugs.htm#UNSAFE_HASH_EQUALS):</b>*  Unsafe comparison of hash that are susceptible to timing attack
   
   ---
   
   <details><summary>ℹī¸ Expand to see all <b>@sonatype-lift</b> commands</summary>
   
   You can reply with the following commands. For example, reply with ***@sonatype-lift ignoreall*** to leave out all findings.
   | **Command** | **Usage** |
   | ------------- | ------------- |
   | `@sonatype-lift ignore` | Leave out the above finding from this PR |
   | `@sonatype-lift ignoreall` | Leave out all the existing findings from this PR |
   | `@sonatype-lift exclude <file\|issue\|path\|tool>` | Exclude specified `file\|issue\|path\|tool` from Lift findings by updating your config.toml file |
   
   **Note:** When talking to LiftBot, you need to **refresh** the page to see its response.
   <sub>[Click here](https://github.com/apps/sonatype-lift/installations/new) to add LiftBot to another repo.</sub></details>
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on pull request #1550: True cluster join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on PR #1550:
URL: https://github.com/apache/solr/pull/1550#issuecomment-1549732442

   Still working on unit test and backward compatibility. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev closed pull request #1550: Add AffinityPlacementPlugin.withCollectionShards for fully distributed join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev closed pull request #1550: Add AffinityPlacementPlugin.withCollectionShards for fully distributed join
URL: https://github.com/apache/solr/pull/1550


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on pull request #1550: Add AffinityPlacementPlugin.withCollectionShards for fully distributed join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on PR #1550:
URL: https://github.com/apache/solr/pull/1550#issuecomment-1576618740

   Closing in favor of 
   
   - https://github.com/apache/solr/pull/1690 and 
   - https://github.com/apache/solr/pull/1691


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on pull request #1550: Add AffinityPlacementPlugin.withCollectionShards for fully distributed join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on PR #1550:
URL: https://github.com/apache/solr/pull/1550#issuecomment-1569146168

   @HoustonPutman may I ask you to have a look at AffinityPlacementFactory changes? 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on a diff in pull request #1550: True cluster join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1161101167


##########
solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java:
##########
@@ -153,7 +153,9 @@ JoinParams parseJoin(QParser qparser) throws SyntaxError {
         CoreContainer container = qparser.req.getCoreContainer();
 
         // if in SolrCloud mode, fromIndex should be the name of a single-sharded collection
-        coreName = ScoreJoinQParserPlugin.getCoreName(fromIndex, container);
+        coreName =
+            ScoreJoinQParserPlugin.getCoreName(

Review Comment:
   @sonatype-lift ignore



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on a diff in pull request #1550: True cluster join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1161101146


##########
solr/core/src/java/org/apache/solr/search/join/ScoreJoinQParserPlugin.java:
##########
@@ -262,7 +271,8 @@ private Query createQuery(
         if (fromIndex != null && (!fromIndex.equals(myCore) || byPassShortCircutCheck)) {
           CoreContainer container = req.getCoreContainer();
 
-          final String coreName = getCoreName(fromIndex, container);
+          final String coreName =
+              getCoreName(fromIndex, container, req.getCore(), toField, fromField);

Review Comment:
   @sonatype-lift ignore



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] mkhludnev commented on a diff in pull request #1550: True cluster join

Posted by "mkhludnev (via GitHub)" <gi...@apache.org>.
mkhludnev commented on code in PR #1550:
URL: https://github.com/apache/solr/pull/1550#discussion_r1195249652


##########
solr/core/src/java/org/apache/solr/cluster/placement/plugins/AffinityPlacementFactory.java:
##########


Review Comment:
   @tflobbe, @sigram kindly asking you to have a look.
   I'm still working on tests, but want to reassure my understanding APF logic and confirm the way I want to extend it. 
   Thank you so much. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org