Java 关于使用Oracle 10g进行后续锁定的Hibernate警告

Java 关于使用Oracle 10g进行后续锁定的Hibernate警告,java,oracle,hibernate,warnings,hibernate-search,Java,Oracle,Hibernate,Warnings,Hibernate Search,我正在使用Hibernate 4.3.0.Final/JPA 2.1,Hibernate Search 4.5.0.Final在WildFly 8.0.0.Final上运行我的应用程序运行非常正常,但在创建索引时,我收到了此hibernate警告 WARN org.hibernate.loader.loader-HHH000444:遇到锁定请求,但方言报告数据库更喜欢在单独的select中执行锁定(后续锁定);执行初始查询后,结果将被锁定 这是创建索引的方法: public void creat

我正在使用Hibernate 4.3.0.Final/JPA 2.1,Hibernate Search 4.5.0.Final在WildFly 8.0.0.Final上运行我的应用程序运行非常正常,但在创建索引时,我收到了此hibernate警告

WARN org.hibernate.loader.loader-HHH000444:遇到锁定请求,但方言报告数据库更喜欢在单独的select中执行锁定(后续锁定);执行初始查询后,结果将被锁定

这是创建索引的方法:

public void createIndex() throws DAOException {
    FullTextEntityManager fullTextEntityManager = Search.getFullTextEntityManager(this.entityManager);

    try {
        fullTextEntityManager.createIndexer(Colaborador.class)
            .purgeAllOnStart(Boolean.TRUE)
            .optimizeOnFinish(Boolean.TRUE)
            .startAndWait();
        }
        catch (InterruptedException e) {
            logger.error("Error creating index", e);
            throw new DAOException(e);
    }
}
我做了一些搜索,找到了一个“解决方案”,或者更确切地说,一种抑制警告的方法。然而,我不知道这是否是最好的解决方案。该解决方案建议扩展
org.hibernate.dialent.oracle10galent
,并覆盖方法
public boolean useFollowOnLocking()
以返回
false

其他重要的事情:这只发生在Hibernate版本4.2.0.Final之后。在此版本之前,没有
useFollowOnLocking()
方法

新方言:

import org.hibernate.dialect.Oracle10gDialect;

public class MyOracle10gDialect extends Oracle10gDialect {

    @Override
    public boolean useFollowOnLocking() {
        return false;
    }
}

我找到了这个解决方案。还有一个拒绝了此警告。我还没有找到任何其他解决方案可用于此警告。

没有理由担心此警告,记录它是一个错误:您应该忽略它,或者更改记录器配置以忽略它

我已经打开了