在 #commit 或 #rollback 之后不调用 org.apache.ignite.transactions.Transaction#close 会导致 leaks/problems 吗?

Does not calling org.apache.ignite.transactions.Transaction#close after a #commit or #rollback cause leaks/problems?

我最近在调试一些问题时注意到,一段写得不好的代码在调用 org.apache.ignite.transactions.Transaction#rollback 后没有调用 org.apache.ignite.transactions.Transaction#close。它既没有使用 try-with-resources 也没有在 finally 中使用它。

我知道并看到 docs 中也提到 Ignite Transaction 对象在使用后需要关闭。

我的问题是这有什么影响。它会导致泄漏或其他问题吗?

谢谢

从代码上看,应该没有问题。 close() 等待未来(在执行 rollback() 时应该已经发生)然后 returns 如果交易是 COMMITTEDROLLED_BACK。没有遗漏任何重要的东西。