Skip to content

Commit c439d9c

Browse files
committed
When implicit transaction terminate on frame close
1 parent 572c8a5 commit c439d9c

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

app/scripts/services/Bolt.coffee

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ angular.module('neo4jApp.services')
148148
session.close()
149149
q.reject e
150150
)
151-
{tx: tx, promise: q.promise}
151+
{tx: tx, promise: q.promise, session: session}
152152

153153
boltTransaction = (query, parameters = {}) ->
154154
statements = if query then [{statement: query, parameters: parameters}] else []

app/scripts/services/CypherTransactionBolt.coffee

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ angular.module('neo4jApp.services')
8585

8686
_reset: ->
8787
@tx = null
88+
@session = null
8889

8990
begin: () ->
9091
q = $q.defer()
@@ -96,17 +97,18 @@ angular.module('neo4jApp.services')
9697
statements = if query then [{statement:query}] else []
9798
UDC.increment('cypher_attempts')
9899
q = $q.defer()
99-
{tx, promise} = Bolt.transaction(statements, @session, @tx)
100+
{tx, promise, session} = Bolt.transaction(statements, @session, @tx)
100101
@tx = tx
102+
@session = session
101103
timer = Timer.start()
102104
promise.then((r) ->
103105
r.responseTime = timer.stop().time()
104106
q.resolve({original: r, remapped: Bolt.constructResult(r)})
105-
that.tx = null
107+
that._reset()
106108
).catch((r) ->
107109
r.responseTime = timer.stop().time()
108110
q.reject({original: r, remapped: Bolt.constructResult(r)})
109-
that.tx = null
111+
that._reset()
110112
)
111113
res = promiseResult(q.promise)
112114
res.then(
@@ -119,9 +121,9 @@ angular.module('neo4jApp.services')
119121
rollback: ->
120122
q = $q.defer()
121123
that = @
122-
if @session and @tx
124+
if @session
123125
@session.close( ->
124-
that.tx = null
126+
that._reset()
125127
q.resolve({original: {}, remapped: Bolt.constructResult({})})
126128
)
127129
else

0 commit comments

Comments
 (0)