Stephen Mallette created TINKERPOP-2707:
-------------------------------------------
Summary: Closing parent connection in python should close tx()
connections
Key: TINKERPOP-2707
URL: https://issues.apache.org/jira/browse/TINKERPOP-2707
Project: TinkerPop
Issue Type: Improvement
Components: python
Affects Versions: 3.5.2
Reporter: Stephen Mallette
If you do:
{code}
graph=Graph()
connection = DriverRemoteConnection(endpoint,'g',
transport_factory=lambda:AiohttpTransport(call_from_event_loop=True))
g = graph.traversal().withRemote(connection)
tx = g.tx()
gtx = tx.begin()
try:
id1 = gtx.addV('id1').next()
id2 = gtx.addV('id2').next()
except Exception as e:
tx.rollback()
else:
print(id1,id2)
connection.close()
{code}
The connection in {{tx}} won't be closed and it will be up to the server to
timeout the connection in its normal fashion. While this isn't the expected way
{{tx}} should be used, it is a bit of a hole someone could stumble in. Seems
like, the close of the parent {{connection}} should also close any spawned
child connections. It might be worth looking at Java to see how the
implementation works there as well.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)