]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5007 - Fix date-synch for ES Synchronizer when date == null (initial start)
authorStephane Gamard <stephane.gamard@searchbox.com>
Fri, 4 Jul 2014 07:28:18 +0000 (09:28 +0200)
committerStephane Gamard <stephane.gamard@searchbox.com>
Fri, 4 Jul 2014 07:34:08 +0000 (09:34 +0200)
sonar-server/src/main/java/org/sonar/server/rule/db/RuleDao.java
sonar-server/src/main/java/org/sonar/server/search/BaseIndex.java
sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java

index c7cd45ef14a70d925ceaa04af69d0d8373e4033c..f1476dafc5bd24d88f1c7068b720c7804ec8971c 100644 (file)
@@ -35,7 +35,6 @@ import org.sonar.server.search.action.IndexAction;
 import org.sonar.server.search.action.KeyIndexAction;
 
 import javax.annotation.CheckForNull;
-
 import java.sql.Timestamp;
 import java.util.Date;
 import java.util.List;
@@ -103,6 +102,7 @@ public class RuleDao extends BaseDao<RuleMapper, RuleDto, RuleKey> {
           RuleKey.of(map.get("repoField"), map.get("ruleField"))));
       }
     });
+    session.commit();
   }
 
   /**
index fda4682574aa7a35f137db20dc50419f28f156dd..abd9c742e70e69d05353fb11b4a2fe2556305a89 100644 (file)
@@ -211,10 +211,11 @@ public abstract class BaseIndex<DOMAIN, DTO extends Dto<KEY>, KEY extends Serial
     SearchResponse response = request.get();
 
     Max max = (Max) response.getAggregations().get("latest");
-    if (Double.isNaN(max.getValue())) {
-      date = new Date(0L);
-    } else {
+
+    if (max.getValue() > 0) {
       date = new DateTime(Double.valueOf(max.getValue()).longValue()).toDate();
+    } else {
+      date = new Date(0L);
     }
 
     LOG.info("Index {}:{} has last update of {}", this.getIndexName(), this.getIndexType(), date);
index 0bb354aa314bfd15df498faa45db52c84da991a1..18c0490a4385bed20bbcc03fcb1d6123923a7494 100644 (file)
@@ -52,7 +52,7 @@ public class IndexSynchronizer {
     synchronize(session, db.activeRuleDao(), index.get(ActiveRuleIndex.class));
     synchronize(session, db.activityDao(), index.get(ActivityIndex.class));
     session.commit();
-    LOG.info("Synchronization done in {}ms...", System.currentTimeMillis()-start);
+    LOG.info("Synchronization done in {}ms...", System.currentTimeMillis() - start);
     session.close();
   }
 
@@ -60,6 +60,5 @@ public class IndexSynchronizer {
     long start = System.currentTimeMillis();
     dao.synchronizeAfter(session,
       index.getLastSynchronization());
-    LOG.info("-- Synchronized {} in {}ms", index.getIndexType(), System.currentTimeMillis() - start);
   }
 }