This is an automated email from the ASF dual-hosted git repository.

ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-saga.git

commit 4f48fa9bb077af0d36d97ceef1bafc7e2930f174
Author: Willem Jiang <[email protected]>
AuthorDate: Wed Nov 7 15:15:19 2018 +0800

    SCB-1013 Support to disable the event scanner Alpha
---
 .../apache/servicecomb/saga/alpha/server/AlphaConfig.java   | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git 
a/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/AlphaConfig.java
 
b/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/AlphaConfig.java
index ad39d62..20ee3ee 100644
--- 
a/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/AlphaConfig.java
+++ 
b/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/AlphaConfig.java
@@ -38,6 +38,8 @@ import 
org.apache.servicecomb.saga.alpha.server.tcc.GrpcTccEventService;
 import 
org.apache.servicecomb.saga.alpha.server.tcc.callback.TccPendingTaskRunner;
 import org.apache.servicecomb.saga.alpha.server.tcc.service.TccEventScanner;
 import org.apache.servicecomb.saga.alpha.server.tcc.service.TccTxEventService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.autoconfigure.domain.EntityScan;
 import org.springframework.context.annotation.Bean;
@@ -46,6 +48,7 @@ import org.springframework.context.annotation.Configuration;
 @EntityScan(basePackages = "org.apache.servicecomb.saga.alpha")
 @Configuration
 class AlphaConfig {
+  private static final Logger LOG = LoggerFactory.getLogger(AlphaConfig.class);
   private final BlockingQueue<Runnable> pendingCompensations = new 
LinkedBlockingQueue<>();
   private final ScheduledExecutorService scheduler = 
Executors.newScheduledThreadPool(1);
 
@@ -91,14 +94,18 @@ class AlphaConfig {
   @Bean
   TxConsistentService txConsistentService(
       @Value("${alpha.event.pollingInterval:500}") int eventPollingInterval,
+      @Value("${alpha.event.scanner.enabled:true}") boolean eventScanner,
       ScheduledExecutorService scheduler,
       TxEventRepository eventRepository,
       CommandRepository commandRepository,
       TxTimeoutRepository timeoutRepository,
       OmegaCallback omegaCallback) {
-        new EventScanner(scheduler,
-            eventRepository, commandRepository, timeoutRepository,
-            omegaCallback, eventPollingInterval).run();
+        if (eventScanner) {
+          new EventScanner(scheduler,
+              eventRepository, commandRepository, timeoutRepository,
+              omegaCallback, eventPollingInterval).run();
+          LOG.info("Starting the EventScanner.");
+          }
         TxConsistentService consistentService = new 
TxConsistentService(eventRepository);
         return consistentService;
   }

Reply via email to