Transactions in GraphQL

In general, I really like the idea. I’m kinda thinking that it should be configurable as there might be cases where the transaction conflict is what you want.

I think I’m seeing that there’s a bit of a broader picture here, so maybe we need to scope out the whole area and then pull off pieces. For example:

  • There was also a request to run a block of mutations as a single transaction and roll back if any failed here - currently we run each in a transaction
  • If we aren’t exposing Dgraph or GraphQL± at all in Slash GraphQL, then you really do need transactions sometimes, so we’d need to expose that through GraphQL.

Let’s

  1. find out what might and might not be exposed in Slash GraphQL
  2. broaden this to cover transactions a bit more in general.