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 04:51:57 UTC

[1/3] lucene-solr:branch_5_5: SOLR-9198: config APIs unable to add multiple values with same name

Repository: lucene-solr
Updated Branches:
  refs/heads/branch_5_5 c2947a7e6 -> cb42e6d63


SOLR-9198: config APIs unable to add multiple values with same name


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/9c4bad91
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/9c4bad91
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/9c4bad91

Branch: refs/heads/branch_5_5
Commit: 9c4bad9188d86a8503a1816709933f4807b88f36
Parents: 8cf5213
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 00:32:35 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 10:21:09 2016 +0530

----------------------------------------------------------------------
 .../java/org/apache/solr/core/PluginInfo.java   | 16 +++++++++++--
 .../apache/solr/core/TestSolrConfigHandler.java | 24 ++++++++++++++++++++
 2 files changed, 38 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/9c4bad91/solr/core/src/java/org/apache/solr/core/PluginInfo.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/core/PluginInfo.java b/solr/core/src/java/org/apache/solr/core/PluginInfo.java
index c6fe42c..832c8c2 100644
--- a/solr/core/src/java/org/apache/solr/core/PluginInfo.java
+++ b/solr/core/src/java/org/apache/solr/core/PluginInfo.java
@@ -67,8 +67,20 @@ public class PluginInfo implements MapSerializable{
     for (Map.Entry<String, Object> entry : map.entrySet()) {
       if (NAME.equals(entry.getKey()) || CLASS_NAME.equals(entry.getKey())) continue;
       Object value = entry.getValue();
-      if (value instanceof Map) value = new NamedList((Map) value);
-      initArgs.add(entry.getKey(), value);
+      if (value instanceof List) {
+        List list = (List) value;
+        if (!list.isEmpty() && list.get(0) instanceof Map) {//this is a subcomponent
+          for (Object o : list) {
+            if (o instanceof Map) o = new NamedList<>((Map) o);
+            initArgs.add(entry.getKey(), o);
+          }
+        } else {
+          initArgs.add(entry.getKey(), value);
+        }
+      } else {
+        if (value instanceof Map) value = new NamedList((Map) value);
+        initArgs.add(entry.getKey(), value);
+      }
     }
     this.type = type;
     this.name = (String) m.get(NAME);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/9c4bad91/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java b/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
index 43c26a2..c53ef6e 100644
--- a/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
+++ b/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
@@ -424,6 +424,30 @@ public class TestSolrConfigHandler extends RestTestBase {
         Arrays.asList("config", "searchComponent","myspellcheck", "spellchecker", "class"),
         "solr.DirectSolrSpellChecker",
         10);
+
+    payload = "{\n" +
+        "    'add-requesthandler': {\n" +
+        "        name : '/dump100',\n" +
+        "        class : 'org.apache.solr.handler.DumpRequestHandler'," +
+        "        suggester: [{name: s1,lookupImpl: FuzzyLookupFactory, dictionaryImpl : DocumentDictionaryFactory}," +
+        "                    {name: s2,lookupImpl: FuzzyLookupFactory , dictionaryImpl : DocumentExpressionDictionaryFactory}]" +
+        "    }\n" +
+        "}";
+    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    map = testForResponseElement(writeHarness,
+        testServerBaseUrl,
+        "/config?wt=json",
+        cloudSolrClient,
+        Arrays.asList("config", "requestHandler","/dump100", "class"),
+        "org.apache.solr.handler.DumpRequestHandler",
+        10);
+
+    map = getRespMap("/dump100?wt=json&json.nl=arrmap&initArgs=true", writeHarness);
+    List initArgs = (List) map.get("initArgs");
+    assertEquals(2, initArgs.size());
+    assertTrue(((Map)initArgs.get(0)).containsKey("suggester"));
+    assertTrue(((Map)initArgs.get(1)).containsKey("suggester"));
+    System.out.println(map);
   }
 
   public static Map testForResponseElement(RestTestHarness harness,


[3/3] lucene-solr:branch_5_5: Merge remote-tracking branch 'origin/branch_5_5' into branch_5_5

Posted by no...@apache.org.
Merge remote-tracking branch 'origin/branch_5_5' into branch_5_5


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

Branch: refs/heads/branch_5_5
Commit: cb42e6d63d63fa82848f769847dc6f61dfa6a501
Parents: 060b076 c2947a7
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 10:21:49 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 10:21:49 2016 +0530

----------------------------------------------------------------------
 dev-tools/scripts/checkJavaDocs.py | 74 ++++++++++++++++-----------------
 1 file changed, 36 insertions(+), 38 deletions(-)
----------------------------------------------------------------------



[2/3] lucene-solr:branch_5_5: SOLR-9198: config APIs unable to add multiple values with same name

Posted by no...@apache.org.
SOLR-9198: config APIs unable to add multiple values with same name


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/060b076f
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/060b076f
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/060b076f

Branch: refs/heads/branch_5_5
Commit: 060b076fd3c3abe2a5c510aa3f5fde6af538bb1e
Parents: 9c4bad9
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 9 10:21:24 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 9 10:21:24 2016 +0530

----------------------------------------------------------------------
 solr/CHANGES.txt | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/060b076f/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 07ee4e8..c0211de 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -9,7 +9,10 @@ caching, replication, and a web administration interface.
 See http://lucene.apache.org/solr for more information.
 
 ======================= 5.5.2 =======================
-(No Changes)
+
+Bug Fixes
+
+* SOLR-9198: config APIs unable to add multiple values with same name (noble)
 
 ======================= 5.5.1 =======================