fix #1629 disable result collapsing in scroll request

This commit is contained in:
Shinsuke Sugaya 2018-04-30 14:36:17 +09:00
parent 48f13ba981
commit f11169716a
2 changed files with 9 additions and 2 deletions

View file

@ -193,7 +193,7 @@ public class SearchService {
fessConfig.getIndexDocumentType(),
searchRequestBuilder -> {
queryHelper.processSearchPreference(searchRequestBuilder, userBean);
return SearchConditionBuilder.builder(searchRequestBuilder)
return SearchConditionBuilder.builder(searchRequestBuilder).scroll()
.query(StringUtil.isBlank(sortField) ? query : query + " sort:" + sortField).size(pageSize)
.responseFields(queryHelper.getScrollResponseFields()).searchRequestType(params.getType()).build();
},

View file

@ -972,6 +972,7 @@ public class FessEsClient implements Client {
private FacetInfo facetInfo;
private String similarDocHash;
private SearchRequestType searchRequestType = SearchRequestType.SEARCH;
private boolean isScroll = false;
public static SearchConditionBuilder builder(final SearchRequestBuilder searchRequestBuilder) {
return new SearchConditionBuilder(searchRequestBuilder);
@ -1023,6 +1024,11 @@ public class FessEsClient implements Client {
return this;
}
public SearchConditionBuilder scroll() {
this.isScroll = true;
return this;
}
public boolean build() {
if (StringUtil.isBlank(query)) {
return false;
@ -1109,7 +1115,8 @@ public class FessEsClient implements Client {
}));
}
if (!SearchRequestType.ADMIN_SEARCH.equals(searchRequestType) && fessConfig.isResultCollapsed() && similarDocHash == null) {
if (!SearchRequestType.ADMIN_SEARCH.equals(searchRequestType) && !isScroll && fessConfig.isResultCollapsed()
&& similarDocHash == null) {
searchRequestBuilder.setCollapse(getCollapseBuilder(fessConfig));
}