Ticket #5 (new enhancement)

Opened 2 years ago

Last modified 5 months ago

merge time binary-rollback feature

Reported by: ferringb Owned by:
Priority: minor Milestone:
Component: merge Version:
Keywords: vdb transactional functionality Cc:

Description

short version: add two triggers stacked/ordered immediately before and after merge_contents/unmerge_contents 1) hardlink nondir fs entries from install_existing cset to .backup-merge.$(basename $obj) in the same dir 2) post merge/unmerge, remove the created hardlinks.

What this enables is that in worst case for a failure in merging (exploding trigger, faulty pkgcore code, etc), it can do a rollback to the previous on disk image. preinst still has fired, but shouldn't have done anything to break anything (key word is shouldn't have).

Change History

comment:1 Changed 2 years ago by ferringb

  • milestone set to vdb transactional functionality

comment:2 Changed 22 months ago by jokey

  • keywords vdb transactional functionality added
  • component set to pkgcore
  • milestone vdb transactional functionality deleted

comment:3 Changed 21 months ago by ferringb

  • reporter changed from anonymous to ferringb

offhand... requires adding a new chain of triggers for failure handling, or just a hook point for it.

Not sure how best to implement this in terms of registration points; suggestings welcome.

comment:4 Changed 5 months ago by masterdriverz

  • component changed from pkgcore to merge
Note: See TracTickets for help on using tickets.