summaryrefslogtreecommitdiffstats
path: root/server/sonar-server
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2016-03-07 21:36:38 +0100
committerSimon Brandhof <simon.brandhof@sonarsource.com>2016-03-08 10:22:42 +0100
commit2bb03fa34f30718282cfb50a51cd4324f0910a1f (patch)
tree3afda1465527cfa1278bb446f66e24696d2500bd /server/sonar-server
parent1f235da533466009a385c84da1680888948e078a (diff)
downloadsonarqube-2bb03fa34f30718282cfb50a51cd4324f0910a1f.tar.gz
sonarqube-2bb03fa34f30718282cfb50a51cd4324f0910a1f.zip
Disable some NGram tokenizers on index "rules"
Diffstat (limited to 'server/sonar-server')
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndexDefinition.java8
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexTest.java6
2 files changed, 9 insertions, 5 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndexDefinition.java b/server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndexDefinition.java
index f3bea66e104..30a0437004e 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndexDefinition.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndexDefinition.java
@@ -91,8 +91,8 @@ public class RuleIndexDefinition implements IndexDefinition {
ruleMapping.setAttribute("_routing", ImmutableMap.of("required", true, "path", RuleIndexDefinition.FIELD_RULE_REPOSITORY));
ruleMapping.setEnableSource(false);
- ruleMapping.stringFieldBuilder(FIELD_RULE_KEY).enableSorting().enableGramSearch().build();
- ruleMapping.stringFieldBuilder(FIELD_RULE_KEY_AS_LIST).enableGramSearch().build();
+ ruleMapping.stringFieldBuilder(FIELD_RULE_KEY).enableSorting().build();
+ ruleMapping.stringFieldBuilder(FIELD_RULE_KEY_AS_LIST).build();
ruleMapping.stringFieldBuilder(FIELD_RULE_RULE_KEY).disableSearch().docValues().build();
ruleMapping.stringFieldBuilder(FIELD_RULE_REPOSITORY).docValues().build();
ruleMapping.stringFieldBuilder(FIELD_RULE_INTERNAL_KEY).disableSearch().docValues().build();
@@ -101,7 +101,7 @@ public class RuleIndexDefinition implements IndexDefinition {
ruleMapping.stringFieldBuilder(FIELD_RULE_HTML_DESCRIPTION).enableWordSearch().build();
ruleMapping.stringFieldBuilder(FIELD_RULE_SEVERITY).docValues().build();
ruleMapping.stringFieldBuilder(FIELD_RULE_STATUS).docValues().build();
- ruleMapping.stringFieldBuilder(FIELD_RULE_LANGUAGE).enableGramSearch().build();
+ ruleMapping.stringFieldBuilder(FIELD_RULE_LANGUAGE).build();
ruleMapping.createBooleanField(FIELD_RULE_IS_TEMPLATE);
ruleMapping.stringFieldBuilder(FIELD_RULE_TEMPLATE_KEY).docValues().build();
@@ -118,7 +118,7 @@ public class RuleIndexDefinition implements IndexDefinition {
activeRuleMapping.setAttribute("_parent", ImmutableMap.of("type", RuleIndexDefinition.TYPE_RULE));
activeRuleMapping.setAttribute("_routing", ImmutableMap.of("required", true, "path", RuleIndexDefinition.FIELD_ACTIVE_RULE_REPOSITORY));
- activeRuleMapping.stringFieldBuilder(RuleIndexDefinition.FIELD_ACTIVE_RULE_KEY).enableSorting().enableGramSearch().build();
+ activeRuleMapping.stringFieldBuilder(RuleIndexDefinition.FIELD_ACTIVE_RULE_KEY).enableSorting().build();
activeRuleMapping.stringFieldBuilder(RuleIndexDefinition.FIELD_ACTIVE_RULE_RULE_KEY).disableSearch().docValues().build();
activeRuleMapping.stringFieldBuilder(RuleIndexDefinition.FIELD_ACTIVE_RULE_REPOSITORY).disableSearch().docValues().build();
activeRuleMapping.stringFieldBuilder(RuleIndexDefinition.FIELD_ACTIVE_RULE_PROFILE_KEY).docValues().build();
diff --git a/server/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexTest.java b/server/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexTest.java
index 5a9ba3de0fb..3241bb115a8 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexTest.java
@@ -206,9 +206,13 @@ public class RuleIndexTest {
query = new RuleQuery().setQueryText("tag1");
assertThat(index.search(query, new SearchOptions()).getIds()).containsOnly(RuleKey.of("java", "S001"));
- // tag1 and tag2 in query
+ // tag1 OR tag2
+ // note: should it be AND instead of OR ?
query = new RuleQuery().setQueryText("tag1 tag2");
assertThat(index.search(query, new SearchOptions()).getIds()).hasSize(2);
+ // tag2 OR tag1
+ query = new RuleQuery().setQueryText("tag2 tag1");
+ assertThat(index.search(query, new SearchOptions()).getIds()).hasSize(2);
// tag2 in filter
query = new RuleQuery().setTags(ImmutableSet.of("tag2"));