This commit is contained in:
parent
1b88a10e07
commit
0f30323212
3 changed files with 55 additions and 0 deletions
|
@ -68,6 +68,9 @@ public class DocumentAction implements Serializable {
|
|||
@Resource
|
||||
protected SolrGroupManager solrGroupManager;
|
||||
|
||||
@Resource
|
||||
protected SolrGroup suggestSolrGroup;
|
||||
|
||||
@Resource
|
||||
protected WebManagementHelper webManagementHelper;
|
||||
|
||||
|
@ -171,6 +174,15 @@ public class DocumentAction implements Serializable {
|
|||
throw new SSCActionMessagesException(
|
||||
"errors.failed_to_commit_solr_index");
|
||||
} else {
|
||||
final boolean isUpdateSolrGroup;
|
||||
final SolrGroup updateSolrGroup = solrGroupManager
|
||||
.getSolrGroup(QueryType.ADD);
|
||||
if (updateSolrGroup.getGroupName().equals(solrGroup.getGroupName())) {
|
||||
isUpdateSolrGroup = true;
|
||||
} else {
|
||||
isUpdateSolrGroup = false;
|
||||
}
|
||||
|
||||
final Thread thread = new Thread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
@ -178,9 +190,17 @@ public class DocumentAction implements Serializable {
|
|||
final long execTime = System.currentTimeMillis();
|
||||
try {
|
||||
systemHelper.updateStatus(solrGroup, QueryType.ADD);
|
||||
if (isUpdateSolrGroup) {
|
||||
systemHelper.updateStatus(suggestSolrGroup,
|
||||
QueryType.ADD);
|
||||
}
|
||||
solrGroup.commit(true, true, false, true);
|
||||
systemHelper.updateStatus(solrGroup,
|
||||
QueryType.COMMIT);
|
||||
if (isUpdateSolrGroup) {
|
||||
systemHelper.updateStatus(suggestSolrGroup,
|
||||
QueryType.COMMIT);
|
||||
}
|
||||
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("[EXEC TIME] index commit time: "
|
||||
|
@ -217,6 +237,15 @@ public class DocumentAction implements Serializable {
|
|||
throw new SSCActionMessagesException(
|
||||
"errors.failed_to_optimize_solr_index");
|
||||
} else {
|
||||
final boolean isUpdateSolrGroup;
|
||||
final SolrGroup updateSolrGroup = solrGroupManager
|
||||
.getSolrGroup(QueryType.ADD);
|
||||
if (updateSolrGroup.getGroupName().equals(solrGroup.getGroupName())) {
|
||||
isUpdateSolrGroup = true;
|
||||
} else {
|
||||
isUpdateSolrGroup = false;
|
||||
}
|
||||
|
||||
final Thread thread = new Thread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
@ -224,9 +253,17 @@ public class DocumentAction implements Serializable {
|
|||
final long execTime = System.currentTimeMillis();
|
||||
try {
|
||||
systemHelper.updateStatus(solrGroup, QueryType.ADD);
|
||||
if (isUpdateSolrGroup) {
|
||||
systemHelper.updateStatus(suggestSolrGroup,
|
||||
QueryType.ADD);
|
||||
}
|
||||
solrGroup.optimize();
|
||||
systemHelper.updateStatus(solrGroup,
|
||||
QueryType.OPTIMIZE);
|
||||
if (isUpdateSolrGroup) {
|
||||
systemHelper.updateStatus(suggestSolrGroup,
|
||||
QueryType.OPTIMIZE);
|
||||
}
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("[EXEC TIME] index optimize time: "
|
||||
+ (System.currentTimeMillis() - execTime)
|
||||
|
|
|
@ -96,6 +96,9 @@ public class Crawler implements Serializable {
|
|||
@Resource
|
||||
protected SolrGroupManager solrGroupManager;
|
||||
|
||||
@Resource
|
||||
SolrGroup suggestSolrGroup;
|
||||
|
||||
@Binding(bindingType = BindingType.MAY)
|
||||
@Resource
|
||||
protected ScreenShotManager screenShotManager;
|
||||
|
@ -538,6 +541,13 @@ public class Crawler implements Serializable {
|
|||
statusPolicy.activate(QueryType.OPTIMIZE, serverName);
|
||||
}
|
||||
}
|
||||
final StatusPolicy suggestStatusPolicy = suggestSolrGroup
|
||||
.getStatusPolicy();
|
||||
for (final String serverName : suggestSolrGroup.getServerNames()) {
|
||||
if (suggestStatusPolicy.isActive(QueryType.OPTIMIZE, serverName)) {
|
||||
suggestStatusPolicy.activate(QueryType.OPTIMIZE, serverName);
|
||||
}
|
||||
}
|
||||
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("[EXEC TIME] index optimize time: " + startTime + "ms");
|
||||
|
@ -564,6 +574,13 @@ public class Crawler implements Serializable {
|
|||
statusPolicy.activate(QueryType.COMMIT, serverName);
|
||||
}
|
||||
}
|
||||
final StatusPolicy suggestStatusPolicy = suggestSolrGroup
|
||||
.getStatusPolicy();
|
||||
for (final String serverName : suggestSolrGroup.getServerNames()) {
|
||||
if (suggestStatusPolicy.isActive(QueryType.COMMIT, serverName)) {
|
||||
suggestStatusPolicy.activate(QueryType.COMMIT, serverName);
|
||||
}
|
||||
}
|
||||
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("[EXEC TIME] index commit time: " + startTime + "ms");
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
<include path="aop.dicon" />
|
||||
<include path="dbflute.dicon" />
|
||||
<include path="fess.dicon" />
|
||||
<include path="fess_suggest.dicon"/>
|
||||
|
||||
<include path="s2robot_db.dicon" />
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue