Skip to content

Many of our API's would benefit if we designed to use JTA transactions API #2063

@lesv

Description

@lesv

We should consider this for Spanner, PubSub, and other API's, however, it might need updating the product API's to support this, so it may be a moot ask.

RayT recently wrote wrote:

That's a good start. In short, a hook would at least have begin transaction, commit, and abort/recover semantics.

To be true distributed transactional, it'll need a XA resource adapter.

Otherwise, another pattern would be temporarily writing the pub/sub message into a transactional store (e.g., via JDBC into a database), and have another background process that can guarantee delivery and do all the retries, etc.

That being said, how does Google deal w/ similar cases? Perhaps we recommend people not to do this (that's my guess), but we need to recommend alternatives.

Metadata

Metadata

Labels

api: datastoreIssues related to the Datastore API.api: dnsIssues related to the Cloud DNS API.api: pubsubIssues related to the Pub/Sub API.api: spannerIssues related to the Spanner API.priority: p2Moderately-important priority. Fix may not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions