Hibernate Search 永不停止索引
Hibernate Search never stops indexing
如果我将多个实体标记为@Indexed,Hibernate 搜索将永远不会停止对这些实体的索引。此外,这些实体的表是空的。当只有一个实体用@Indexed 标记时,一切正常。
实体非常简单,结构如下(用 Scala 编写)
@Indexed(index="index/some_entity")
@Entity
@Table(name = "some_entity")
class SomeEntity extends BaseIdEntity {
@Transient
val nameLength: Int = 50
@Column(length = 50)
@Field(index=Index.YES, analyze=Analyze.YES, store=Store.NO)
@BeanProperty var name: String = _
....
}
在调试模式下,我可以看到 Search.getFullTextEntityManager(entityManager).createIndexer().startAndWait() 将是正确的,但在此之后我可以看到 "BatchIndexingWorkspace"-Threads,每个实体(@Indexed)一个线程,永远不会最终确定。
我尝试使用 4.3 和 5.0.1 之间的不同 Hibernate Search 版本
有什么想法或建议吗??我已经没有想法了。
问题是索引器在两个不同的 bean 中被初始化了两次。 Search.getFullTextEntityManager(entityManager).createIndexer().startAndWait() 的第二次调用从未返回。我刚刚删除了不必要的调用,现在可以使用了:)
如果我将多个实体标记为@Indexed,Hibernate 搜索将永远不会停止对这些实体的索引。此外,这些实体的表是空的。当只有一个实体用@Indexed 标记时,一切正常。
实体非常简单,结构如下(用 Scala 编写)
@Indexed(index="index/some_entity")
@Entity
@Table(name = "some_entity")
class SomeEntity extends BaseIdEntity {
@Transient
val nameLength: Int = 50
@Column(length = 50)
@Field(index=Index.YES, analyze=Analyze.YES, store=Store.NO)
@BeanProperty var name: String = _
....
}
在调试模式下,我可以看到 Search.getFullTextEntityManager(entityManager).createIndexer().startAndWait() 将是正确的,但在此之后我可以看到 "BatchIndexingWorkspace"-Threads,每个实体(@Indexed)一个线程,永远不会最终确定。
我尝试使用 4.3 和 5.0.1 之间的不同 Hibernate Search 版本
有什么想法或建议吗??我已经没有想法了。
问题是索引器在两个不同的 bean 中被初始化了两次。 Search.getFullTextEntityManager(entityManager).createIndexer().startAndWait() 的第二次调用从未返回。我刚刚删除了不必要的调用,现在可以使用了:)