@ IndexedEmbedded을 사용하여 일대 다 연관 관계가있는 포함 된 컬렉션 (집합)을 인덱싱하려고합니다. 문제는 우리가 응용 프로그램에서 레코드를 부드럽게 삭제한다는 것입니다. 인덱싱하는 동안 논리적으로 삭제 된 레코드를 제외하기 위해 인덱스 된 컬렉션에 최대 절전 모드 필터를 적용하려고합니다. 인덱싱최대 절전 모드 검색을 통해 인덱싱하는 동안 최대 절전 모드 필터가 작동하지 않음
@Index
Class A {
@IndexedEmbedded
@OneToMany(targetEntity = B.class, fetch = FetchType.EAGER)
@Filter(name = "deletedRecordsFilter")
Set<B> setOfBs;
}
: 나는 session.enableFilter ("deletedFilterRecords")를 사용하여 필터를 활성화 한
FullTextSession fts = getFullTextSession();
fts.createIndexer(entityClass)
.purgeAllOnStart(true)
.optimizeAfterPurge(true)
.optimizeOnFinish(true)
.batchSizeToLoadObjects(30)
.threadsForSubsequentFetching(8)
.threadsToLoadObjects(4)
.threadsForIndexWriter(3)
.startAndWait();
. 데이터가 인덱싱되었지만 필터가 제대로 작동하지 않습니다. 포함 된 컬렉션에는 여전히 삭제 된 레코드가 포함됩니다.
최대 절전 모드 검색을 통해 인덱싱하는 동안 최대 절전 모드 필터가 작동하지 않습니까? 인덱싱 중에 필터가 작동하지 않으면 논리적으로 삭제 된 레코드를 인덱싱하지 않기 위해 어떤 방법이 있습니까?