1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
private
void
startExecutorService() {
Runnable task =
new
Runnable() {
@Override
public
void
run() {
if
(pollDisabled.get()) {
LOG.info(
"Poll disabled"
);
return
;
}
try
{
executorStartTime = System.currentTimeMillis();
replicationHandler.doFetch(
null
,
false
);
}
catch
(Exception e) {
LOG.error(
"Exception in fetching index"
, e);
}
}
};
executorService = Executors.newSingleThreadScheduledExecutor(
new
DefaultSolrThreadFactory(
"snapPuller"
));
long
initialDelay = pollInterval - (System.currentTimeMillis() % pollInterval);
executorService.scheduleAtFixedRate(task, initialDelay, pollInterval, TimeUnit.MILLISECONDS);
LOG.info(
"Poll Scheduled at an interval of "
+ pollInterval +
"ms"
);
}
|