瀏覽代碼

fix #452 : modify delete query

Shinsuke Sugaya 9 年之前
父節點
當前提交
200a10c4a0
共有 1 個文件被更改,包括 5 次插入1 次删除
  1. 5 1
      src/main/java/org/codelibs/fess/helper/DataIndexHelper.java

+ 5 - 1
src/main/java/org/codelibs/fess/helper/DataIndexHelper.java

@@ -257,7 +257,11 @@ public class DataIndexHelper implements Serializable {
             }
             final FessConfig fessConfig = ComponentUtil.getFessConfig();
             final QueryBuilder queryBuilder =
-                    QueryBuilders.boolQuery().must(QueryBuilders.termQuery(fessConfig.getIndexFieldConfigId(), dataConfig.getConfigId()))
+                    QueryBuilders
+                            .boolQuery()
+                            .must(QueryBuilders.termQuery(fessConfig.getIndexFieldConfigId(), dataConfig.getConfigId()))
+                            .must(QueryBuilders.boolQuery().should(QueryBuilders.rangeQuery(fessConfig.getIndexFieldExpires()).lte("now"))
+                                    .should(QueryBuilders.missingQuery(fessConfig.getIndexFieldExpires())))
                             .mustNot(QueryBuilders.termQuery(fessConfig.getIndexFieldSegment(), sessionId));
             try {
                 ComponentUtil.getElasticsearchClient().deleteByQuery(fessConfig.getIndexDocumentUpdateIndex(),