diff options
author | Jenkins CI <ci@sonarsource.com> | 2015-03-20 13:02:09 +0100 |
---|---|---|
committer | Jenkins CI <ci@sonarsource.com> | 2015-03-20 13:02:09 +0100 |
commit | 8e5797b672c6b3370698e706c823f41cef2514d4 (patch) | |
tree | 27cd26043ff0389d35435a08ecc19d8a525adde5 /server/sonar-server | |
parent | 37d694868e5bdf177d1103e261750a379a2b45e1 (diff) | |
parent | 4010dadc61187e390d044408873cdce1af4829f6 (diff) | |
download | sonarqube-8e5797b672c6b3370698e706c823f41cef2514d4.tar.gz sonarqube-8e5797b672c6b3370698e706c823f41cef2514d4.zip |
Automatic merge from branch-5.1
* origin/branch-5.1:
Do not retry to index failed requests in BulkIndexer
Fix some quality flaws
Diffstat (limited to 'server/sonar-server')
4 files changed, 10 insertions, 33 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/activity/index/ActivityResultSetIterator.java b/server/sonar-server/src/main/java/org/sonar/server/activity/index/ActivityResultSetIterator.java index 5e6aae81311..430db67a0c5 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/activity/index/ActivityResultSetIterator.java +++ b/server/sonar-server/src/main/java/org/sonar/server/activity/index/ActivityResultSetIterator.java @@ -19,6 +19,7 @@ */ package org.sonar.server.activity.index; +import org.apache.commons.io.Charsets; import org.apache.commons.lang.StringUtils; import org.elasticsearch.action.update.UpdateRequest; import org.sonar.api.utils.KeyValueFormat; @@ -76,7 +77,7 @@ class ActivityResultSetIterator extends ResultSetIterator<UpdateRequest> { protected UpdateRequest read(ResultSet rs) throws SQLException { ByteArrayOutputStream bytes = new ByteArrayOutputStream(); // all the fields must be present, even if value is null - JsonWriter writer = JsonWriter.of(new OutputStreamWriter(bytes)).setSerializeNulls(true); + JsonWriter writer = JsonWriter.of(new OutputStreamWriter(bytes, Charsets.UTF_8)).setSerializeNulls(true); writer.beginObject(); String key = rs.getString(1); writer.prop(ActivityIndexDefinition.FIELD_KEY, key); diff --git a/server/sonar-server/src/main/java/org/sonar/server/es/BulkIndexer.java b/server/sonar-server/src/main/java/org/sonar/server/es/BulkIndexer.java index 218da47bd84..a43ba7a4fcd 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/es/BulkIndexer.java +++ b/server/sonar-server/src/main/java/org/sonar/server/es/BulkIndexer.java @@ -20,7 +20,6 @@ package org.sonar.server.es; import com.google.common.base.Preconditions; -import com.google.common.collect.Lists; import com.google.common.collect.Maps; import org.elasticsearch.action.ActionListener; import org.elasticsearch.action.ActionRequest; @@ -42,7 +41,6 @@ import org.sonar.api.utils.log.Logger; import org.sonar.api.utils.log.Loggers; import org.sonar.server.util.ProgressLogger; -import java.util.List; import java.util.Map; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; @@ -103,8 +101,6 @@ public class BulkIndexer implements Startable { return this; } - - @Override public void start() { Preconditions.checkState(bulkRequest == null, ALREADY_STARTED_MESSAGE); @@ -212,35 +208,13 @@ public class BulkIndexer implements Startable { semaphore.release(); counter.addAndGet(response.getItems().length); - List<ActionRequest> retries = Lists.newArrayList(); for (BulkItemResponse item : response.getItems()) { if (item.isFailed()) { - ActionRequest retry = req.request().requests().get(item.getItemId()); - retries.add(retry); - } - } - - if (!retries.isEmpty()) { - LOGGER.warn(String.format("%d index requests failed. Trying again.", retries.size())); - BulkRequestBuilder retryBulk = client.prepareBulk(); - for (ActionRequest retry : retries) { - retryBulk.request().add(retry); - } - BulkResponse retryBulkResponse = retryBulk.get(); - if (retryBulkResponse.hasFailures()) { - LOGGER.error("New attempt to index documents failed"); - for (int index = 0; index < retryBulkResponse.getItems().length; index++) { - BulkItemResponse item = retryBulkResponse.getItems()[index]; - if (item.isFailed()) { - StringBuilder sb = new StringBuilder(); - String msg = sb.append("\n[").append(index) - .append("]: index [").append(item.getIndex()).append("], type [").append(item.getType()).append("], id [").append(item.getId()) - .append("], message [").append(item.getFailureMessage()).append("]").toString(); - LOGGER.error(msg); - } - } - } else { - LOGGER.info("New index attempt succeeded"); + StringBuilder sb = new StringBuilder(); + String msg = sb + .append("index [").append(item.getIndex()).append("], type [").append(item.getType()).append("], id [").append(item.getId()) + .append("], message [").append(item.getFailureMessage()).append("]").toString(); + LOGGER.error(msg); } } } diff --git a/server/sonar-server/src/main/java/org/sonar/server/source/index/SourceFileResultSetIterator.java b/server/sonar-server/src/main/java/org/sonar/server/source/index/SourceFileResultSetIterator.java index ab01ae4d44d..3158d3cef7a 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/source/index/SourceFileResultSetIterator.java +++ b/server/sonar-server/src/main/java/org/sonar/server/source/index/SourceFileResultSetIterator.java @@ -19,6 +19,7 @@ */ package org.sonar.server.source.index; +import org.apache.commons.io.Charsets; import org.apache.commons.lang.StringUtils; import org.elasticsearch.action.update.UpdateRequest; import org.sonar.api.utils.text.JsonWriter; @@ -117,7 +118,7 @@ public class SourceFileResultSetIterator extends ResultSetIterator<SourceFileRes ByteArrayOutputStream bytes = new ByteArrayOutputStream(); // all the fields must be present, even if value is null - JsonWriter writer = JsonWriter.of(new OutputStreamWriter(bytes)).setSerializeNulls(true); + JsonWriter writer = JsonWriter.of(new OutputStreamWriter(bytes, Charsets.UTF_8)).setSerializeNulls(true); writer.beginObject(); writer.prop(SourceLineIndexDefinition.FIELD_PROJECT_UUID, projectUuid); writer.prop(SourceLineIndexDefinition.FIELD_FILE_UUID, fileUuid); diff --git a/server/sonar-server/src/test/java/org/sonar/server/util/DateCollectorTest.java b/server/sonar-server/src/test/java/org/sonar/server/util/DateCollectorTest.java index da7369eee7f..9b7a28d8859 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/util/DateCollectorTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/util/DateCollectorTest.java @@ -36,6 +36,7 @@ public class DateCollectorTest { @Test public void max() throws Exception { collector.add(DateUtils.parseDate("2013-06-01")); + collector.add(null); collector.add(DateUtils.parseDate("2014-01-01")); collector.add(DateUtils.parseDate("2013-08-01")); |