Skip to content

AIP versioning using transactions and storage versioning #3558

@luis100

Description

@luis100

Support AIP versioning by using the transactions to be able to rollback to a previous version, given the needed information is on the storage versioning system, such as a S3 storage with versioning enabled.

  • Browsing an AIP, there is a new "Versions" panel
  • Each version is a transaction, named "Version x", clicking on the version we can see the transaction log, the CREATE, UPDATE and DELETE operations.
  • When committing a transaction, we should record in the operations the storage version id so we can use in a rollback after commit.
  • Allow to restore an AIP to a previous version, if rollback after commit is viable for this and every subsequent version, this will apply reverse transactions be the reverse order, which should be called "Restore version X" (the rollback is a single transaction the applies the rollback of all transaction needed to restore to a certain version).

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions