【问题标题】:Transaction Isolation levels spring data neo4j事务隔离级别 spring 数据 neo4j
【发布时间】:2015-01-06 10:01:13
【问题描述】:

当我在@Transactional 中指定非默认隔离级别时,我收到一条错误消息,指出

JtaTransactionManager 默认不支持自定义隔离级别 - 将“allowCustomIsolationLevels”切换为“true”

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

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

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

如果有任何关于如何在 SDN 中实现此功能的建议,我将不胜感激。

【问题讨论】:

  • 您如何设置您的 JtaTransaction 管理器?你扩展Neo4jConfiguration 类吗?
  • 是的。我正在使用从 Neo4jConfiguration 扩展的基于注释的配置

标签: spring neo4j spring-data-neo4j


【解决方案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;
}

【讨论】:

  • 对于最新的 neo4j 版本我该怎么做?
猜你喜欢
  • 1970-01-01
  • 2015-07-21
  • 2020-06-07
  • 2011-09-30
  • 2018-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-17
相关资源
最近更新 更多