Uploaded image for project: 'TinkerPop'
  1. TinkerPop
  2. TINKERPOP-741

Remove Options For Transaction Retry

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Done
    • 3.0.2-incubating
    • 3.2.6
    • structure
    • None

    Description

      Submitting a transactional workload for automatic retry currently looks like this:

      public <R> Workload<R> submit(final Function<Graph, R> work);
      

      but that doesn't take into account relatively recent changes that allow mutation operations to execute over a Traversal. It also doesn't account for workload constructed over multiple requests in a session to Gremlin Server too well.

      Maybe we do something like:

      public <R> Workload<R> submit(final Function<Graph, R>... work);
      public <R> Workload<R> submit(final Function<TraversalSource, R>... work);
      public <R> Workload<R> submit(final Traversal... work);
      

      I suppose it might need to return a List<R> or something like that so that each piece of the transaction could maintain its own result.

      With respect to Gremlin Server and in-session requests, a driver could automate transaction retry by inserting scripts to a list variable on the server side until client-side commit() at which point that list could be submit for retry.

      Attachments

        Activity

          People

            spmallette Stephen Mallette
            spmallette Stephen Mallette
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: