Hi all, I opened PR with a detailed proposal for transaction implementation: https://github.com/apache/tinkerpop/pull/2054.
Regards, Valentyn On Mon, Feb 27, 2023 at 1:22 PM Valentyn Kahamlyk < valent...@bitquilltech.com> wrote: > Hi all, > > Now, if you need to use transactions in tinkerpop, the only solution is to > use the Neo4J plugin. Unfortunately, this plugin has not been updated for a > long time and is only compatible with Neo4J version 3.4, which reached end > of life in March, 2020. > > I propose to implement native transaction support in TinkerGraph. > > The most interesting question to discuss is the level of isolation in SQL > 92 terms. There are 5 options to choose from: `Read uncommitted`, `Read > committed`, `Repeatable read`, `Snapshot` and `Serializable`. > > In terms of balancing complexity of implementation and functionality, I > think the most optimal option is `Read committed` or `Repeatable read`. > > I hope to implement `Read committed`, it is enough to add versions to the > Vertices and Edges, add list of updated Elements in Graph. > Write lock can be Vertex-level and Edge-level. > > Regards, Valentyn >