有时候一个很变态的查询就直接卡死了整个实例,我想设置一个全局的超时时间,请问有没有这样的配置?
发布于 4 年前 作者 5233zhangchao 1396 次浏览 来自 问答

如题,多谢大神~

5 回复

neo4j.conf中设置: dbms.transaction.timeout

在4.1中,更好的控制方法是限制单个查询可以使用的内存: dbms.memory.transaction.max_size=500m 或者某个数据库中所有查询的总内存: dbms.memory.transaction.datababase_max_size=100g 或者整个Neo4j数据库实例的最大可用内存: dbms.memory.transaction.global_max_size=200g

@graphway 多谢,我来测试下

我用的是社区版,配置后提示:Unrecognized setting. No declared setting with name: dbms.memory.transaction.max_size ,是不是社区版不支持?

哦,应该是的。那只好把查询放在 apoc.cypher.runTimeBoxed() 过程中、并给定一个超时设置。

@graphway 老师 我neo4j 没有设置 dbms.transaction.timeout 这个查询超时时间 ,那么应该就是使用的neo4j 默认的超时时间 ,或者 我使用驱动的方式查询 的 那么就是使用的驱动默认超时时间 ,总之就是 我想知道 这个 默认的超时时间。在哪里看呢 ,我咋没找到 ,

回到顶部