You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2016/06/09 06:19:29 UTC
[1/3] lucene-solr:branch_6x: SOLR-7123: echo shows wrong output,
and added a test for multi level nesting
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6x 210e0bbc8 -> 274dcdb5f
SOLR-7123: echo shows wrong output, and added a test for multi level nesting
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a07c40a2
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a07c40a2
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a07c40a2
Branch: refs/heads/branch_6x
Commit: a07c40a217361577afc484091fe2c292dbf4f688
Parents: 73b73f0
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 11:34:06 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 11:48:45 2016 +0530
----------------------------------------------------------------------
.../apache/solr/handler/loader/JsonLoader.java | 12 +++---
.../org/apache/solr/handler/JsonLoaderTest.java | 43 ++++++++++++++++++++
2 files changed, 50 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a07c40a2/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java b/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
index 2c5b6ac..318f8e6 100644
--- a/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
+++ b/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
@@ -221,10 +221,7 @@ public class JsonLoader extends ContentStreamLoader {
docs = new ArrayList();
rsp.add("docs", docs);
}
- if (copy.containsKey(null)) {
- copy.put(CHILD_DOC_KEY, copy.get(null));
- copy.remove(null);
- }
+ changeChildDoc(copy);
docs.add(copy);
} else {
AddUpdateCommand cmd = new AddUpdateCommand(req);
@@ -251,7 +248,7 @@ public class JsonLoader extends ContentStreamLoader {
if (o instanceof Map) result.addChildDocument(buildDoc((Map) o));
}
} else if (e.getValue() instanceof Map) {
- result.addChildDocument(buildDoc((Map) e));
+ result.addChildDocument(buildDoc((Map) e.getValue()));
}
} else {
result.setField(e.getKey(), e.getValue());
@@ -659,4 +656,9 @@ public class JsonLoader extends ContentStreamLoader {
}
}
+ private static Map changeChildDoc(Map m) {
+ if (m.containsKey(null)) m.put(CHILD_DOC_KEY, changeChildDoc((Map) m.remove(null)));
+ return m;
+ }
+
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a07c40a2/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java b/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java
index 7e4d28a..65f2d3e 100644
--- a/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java
+++ b/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java
@@ -388,6 +388,49 @@ public class JsonLoaderTest extends SolrTestCaseJ4 {
assertEquals(d.getFieldValue("c"), "c2");
assertEquals(d.getFieldValue("e"), "e2");
assertEquals(d.getFieldValue("d.p"), "q");
+
+ json = "{\n" +
+ " \"id\": \"1\",\n" +
+ " \"name\": \"i am the parent\",\n" +
+ " \"cat\": \"parent\",\n" +
+ " \"children\": [\n" +
+ " {\n" +
+ " \"id\": \"1.1\",\n" +
+ " \"name\": \"i am the 1st child\",\n" +
+ " \"cat\": \"child\"\n" +
+ " },\n" +
+ " {\n" +
+ " \"id\": \"1.2\",\n" +
+ " \"name\": \"i am the 2nd child\",\n" +
+ " \"cat\": \"child\",\n" +
+ " \"grandchildren\": [\n" +
+ " {\n" +
+ " \"id\": \"1.2.1\",\n" +
+ " \"name\": \"i am the grandchild\",\n" +
+ " \"cat\": \"grandchild\"\n" +
+ " }\n" +
+ " ]\n" +
+ " }\n" +
+ " ]\n" +
+ "}";
+ req = req(
+ "split", "/|/children|/children/grandchildren",
+ "f","$FQN:/**",
+ "f", "id:/children/id",
+ "f", "/name",
+ "f", "/children/name",
+ "f", "cat:/children/cat",
+ "f", "id:/children/grandchildren/id",
+ "f", "name:/children/grandchildren/name",
+ "f", "cat:/children/grandchildren/cat");
+ req.getContext().put("path", "/update/json/docs");
+ rsp = new SolrQueryResponse();
+ p = new BufferingRequestProcessor(null);
+ loader = new JsonLoader();
+ loader.load(req, rsp, new ContentStreamBase.StringStream(json), p);
+ assertEquals(2, p.addCommands.get(0).solrDoc.getChildDocuments().size());
+ assertEquals(1, p.addCommands.get(0).solrDoc.getChildDocuments().get(1).getChildDocuments().size());
+
}
[2/3] lucene-solr:branch_6x: SOLR-7123: echo shows wrong output,
and added a test for multi level nesting
Posted by no...@apache.org.
SOLR-7123: echo shows wrong output, and added a test for multi level nesting
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/23f3b311
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/23f3b311
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/23f3b311
Branch: refs/heads/branch_6x
Commit: 23f3b31114d7e0d98eb86c281185ac7bf6f835db
Parents: a07c40a
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 11:47:04 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 11:48:59 2016 +0530
----------------------------------------------------------------------
.../org/apache/solr/handler/loader/JsonLoader.java | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/23f3b311/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java b/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
index 318f8e6..ab7771a 100644
--- a/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
+++ b/solr/core/src/java/org/apache/solr/handler/loader/JsonLoader.java
@@ -28,6 +28,8 @@ import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.UUID;
+import java.util.stream.Collector;
+import java.util.stream.Collectors;
import org.apache.commons.io.IOUtils;
import org.apache.solr.common.SolrException;
@@ -55,6 +57,7 @@ import org.noggit.ObjectBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import static java.util.stream.Collectors.toList;
import static org.apache.solr.common.params.CommonParams.JSON;
import static org.apache.solr.common.params.CommonParams.PATH;
@@ -656,8 +659,15 @@ public class JsonLoader extends ContentStreamLoader {
}
}
- private static Map changeChildDoc(Map m) {
- if (m.containsKey(null)) m.put(CHILD_DOC_KEY, changeChildDoc((Map) m.remove(null)));
+ private static Object changeChildDoc(Object o) {
+ if (o instanceof List) {
+ return ((List) o)
+ .stream()
+ .map(JsonLoader::changeChildDoc)
+ .collect(toList());
+ }
+ Map m = (Map) o;
+ if (m.containsKey(null)) m.put(CHILD_DOC_KEY, changeChildDoc(m.remove(null)));
return m;
}
[3/3] lucene-solr:branch_6x: Merge remote-tracking branch
'origin/branch_6x' into branch_6x
Posted by no...@apache.org.
Merge remote-tracking branch 'origin/branch_6x' into branch_6x
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/274dcdb5
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/274dcdb5
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/274dcdb5
Branch: refs/heads/branch_6x
Commit: 274dcdb5f6df266ef2b5fec66fa7f6fbb97c2aae
Parents: 23f3b31 210e0bb
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 11:49:22 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 11:49:22 2016 +0530
----------------------------------------------------------------------
lucene/CHANGES.txt | 89 +++++++++++++------------
solr/CHANGES.txt | 173 ++++++++++++++++++++++++++----------------------
2 files changed, 140 insertions(+), 122 deletions(-)
----------------------------------------------------------------------