From 2b3d19e50860a3c26ceb4fef371ace94f0bd9b7f Mon Sep 17 00:00:00 2001 From: Matija Santl Date: Wed, 19 Dec 2018 15:37:38 +0100 Subject: [PATCH] Reset `TransactionEngine` internal state on Abort Summary: With neo4j java driver 1.7.0. they don't send `ROLLBACK`. This causes unexpected nested transaction errors. This diff should fix that. Reviewers: mferencevic Reviewed By: mferencevic Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D1780 --- src/query/transaction_engine.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/query/transaction_engine.hpp b/src/query/transaction_engine.hpp index 91fae2987..61691166b 100644 --- a/src/query/transaction_engine.hpp +++ b/src/query/transaction_engine.hpp @@ -93,6 +93,8 @@ class TransactionEngine final { void Abort() { results_ = std::experimental::nullopt; + expect_rollback_ = false; + in_explicit_transaction_ = false; if (!db_accessor_) return; db_accessor_->Abort(); db_accessor_ = nullptr;