From 689c8e71e38e7fbc431f3d0bd1ab1d596b9a551d Mon Sep 17 00:00:00 2001 From: Stephane Gamard Date: Fri, 23 May 2014 20:25:23 +0200 Subject: [PATCH] SONAR-5007 - Implementation of IndexSynchronizer --- .../qualityprofile/db/ActiveRuleMapper.xml | 10 +++---- .../server/platform/ServerComponents.java | 3 +++ .../persistence/ActiveRuleDao.java | 7 ++--- .../server/search/IndexSynchronizer.java | 26 +++++++++++++++++-- 4 files changed, 36 insertions(+), 10 deletions(-) diff --git a/sonar-core/src/main/resources/org/sonar/core/qualityprofile/db/ActiveRuleMapper.xml b/sonar-core/src/main/resources/org/sonar/core/qualityprofile/db/ActiveRuleMapper.xml index b6fc979e329..9f53644fd29 100644 --- a/sonar-core/src/main/resources/org/sonar/core/qualityprofile/db/ActiveRuleMapper.xml +++ b/sonar-core/src/main/resources/org/sonar/core/qualityprofile/db/ActiveRuleMapper.xml @@ -38,14 +38,14 @@ diff --git a/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java b/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java index de2240db45e..58120327a55 100644 --- a/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java +++ b/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java @@ -538,6 +538,9 @@ class ServerComponents { startupContainer.addSingleton(CleanPreviewAnalysisCache.class); startupContainer.addSingleton(CopyRequirementsFromCharacteristicsToRules.class); + /** Index startup Synchronization */ + startupContainer.addSingleton(IndexSynchronizer.class); + DoPrivileged.execute(new DoPrivileged.Task() { @Override protected void doPrivileged() { diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDao.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDao.java index cbe56e8f7cc..2f0732dc05e 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDao.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDao.java @@ -37,8 +37,8 @@ import org.sonar.core.qualityprofile.db.QualityProfileKey; import org.sonar.core.rule.RuleDto; import org.sonar.server.db.BaseDao; import org.sonar.server.qualityprofile.QProfile; -import org.sonar.server.qualityprofile.index.ActiveRuleIndexDefinition; import org.sonar.server.rule2.persistence.RuleDao; +import org.sonar.server.search.IndexDefinition; import org.sonar.server.search.action.IndexAction; import org.sonar.server.search.action.KeyIndexAction; @@ -58,7 +58,7 @@ public class ActiveRuleDao extends BaseDao(getIndexType(), IndexAction.Method.UPSERT, key)); } }); + session.commit(); } @@ -135,6 +136,7 @@ public class ActiveRuleDao extends BaseDao