事务隔离级别弹簧数据neo4j

时间:2014-11-10 06:33:44

标签: spring neo4j spring-data-neo4j

当我在@Transactional中指定除默认值之外的隔离级别时,我收到错误消息,指出

  

默认情况下,JtaTransactionManager不支持自定义隔离级别 - 将'allowCustomIsolationLevels'切换为'true'

我正在使用在嵌入模式下运行neo4j的spring数据neo4j 3.2。

我无法找到有关如何实现此目标的任何文档。我正在尝试解决项目中丢失更新和不一致的分析问题。

neo4j网站建议使用锁定节点模式(使用java api)来实现这一点。

我很感激有关如何在SDN中实现此功能的任何建议。

1 个答案:

答案 0 :(得分:1)

您可以通过

启用allowCustomIsolationLevels
@Configuration
...
public class MyNeo4jConfig extends Neo4jConfiguration {

...

@Override
public PlatformTransactionManager neo4jTransactionManager() throws Exception {
    JtaTransactionManager transactionManager = 
        new JtaTransactionManagerFactoryBean(this.getGraphDatabaseService()).getObject();
    transactionManager.setAllowCustomIsolationLevels(true);
    return transactionManager;
}