Fixing zombie conflicts: known was computed on the wrong thing
Dependencies
- [2]
RSFUX6MLCorrect find_alive cache system - [3]
ZJWCPRMHFixing known patches in deleted contexts - [4]
SXEYMYF7Fixing the bad changes in history (unfortunately, by rebooting). - [5]
ZDK3GNDBTag transactions (including a massive refactoring of errors) - [6]
422NG2MTFixing a confusion on filename conflicts, where some names could be mistakenly treated as zombies - [7]
IXC43DSHFixing a bug in unrecord - [8]
I24UEJQLVarious post-fire fixes - [*]
VO5OQW4WRemoving anyhow in libpijul
Change contents
- edit in libpijul/src/unrecord/mod.rs at line 446
if h == &hash {return true} - replacement in libpijul/src/unrecord/mod.rs at line 450
// When reintroducing a deleted flag, check whether// the re-introduction patch knows about the alive// edges around the target.// When reintroducing an edge that was deleted,// check whether the re-introduction patch knows// about the alive edges around the target. - edit in libpijul/src/find_alive.rs at line 43
// A `None` in the cache means that the vertex// itself (the cache key) is alive. - edit in libpijul/src/changestore/mod.rs at line 58[10.33997][4.818914]
debug!("knows: {:?} {:?}", hash0, hash1); - edit in libpijul/src/apply/edge.rs at line 109
// We're deleting a vertex n.to. If n has children or parents// that are unknown to the patch we're applying, zombify these// children and parents. - replacement in libpijul/src/apply/edge.rs at line 134
let intro = v.introduced_by();let intro = v.dest().change; - replacement in libpijul/src/apply/edge.rs at line 148
let intro = v.introduced_by();let intro = v.dest().change; - replacement in libpijul/src/apply/edge.rs at line 341
let intro = txn.get_external(&v.introduced_by())?.unwrap().into();let intro = txn.get_external(&v.dest().change)?.unwrap().into();