Debugging reference-counting for put
[?]
Feb 2, 2021, 4:05 PM
S4V4QZ5CF5LUDYWNR2UMWH6CHJDJ5FPGAZCQYM5GY7FJMJV4NN4QCDependencies
- [2]
6DMPXOATMore debugging - [3]
UAQX27N4Tests - [4]
NQBEOCFOTests cleanup - [5]
OP6SVMODResetting history - [6]
PXF3R6SVImproving test coverage for btree::cursor - [7]
ONES3V46reference counting works for put - [8]
YWFYZNLZCleanup + inter-process concurrency - [9]
X3QVVQISMore debugging (del seems to work now) - [10]
WS4ZQM4RDebugging, tests, etc.
Change contents
- edit in sanakirja-core/src/btree/put.rs at line 140
if let Ok(rc) = txn.rc(freed & !1) {debug!("rc = {:?}", rc);} - replacement in sanakirja/src/tests.rs at line 178
debug!("=============================");debug!("=========="); - replacement in sanakirja/src/tests.rs at line 186
crate::debug::debug(&txn, &[&db, &db2], "debug0", true);unimplemented!(); - edit in sanakirja/src/tests.rs at line 206
debug!("{:?}", txn.free_owned_pages);crate::debug::debug(&txn, &[&db, &db2], "debug0", true);unimplemented!(); - replacement in sanakirja/src/tests.rs at line 210
for i in 0..512 {debug!("=============");for i in 0..0 { // 512 { - replacement in sanakirja/src/tests.rs at line 214
let db3 = fork_db(&mut txn, &db).unwrap();// let db3 = fork_db(&mut txn, &db).unwrap(); - replacement in sanakirja/src/tests.rs at line 219
debug!("{:?} {:?} {:?}", db, db2, db3);crate::debug::debug(&txn, &[&db, &db2, &db3], "debug", true);debug!("{:?} {:?}", db, db2);crate::debug::debug(&txn, &[&db, &db2], "debug", true); - replacement in sanakirja/src/environment/muttxn.rs at line 21
occupied_owned_pages: Vec<MutPage>,pub(crate) occupied_owned_pages: Vec<MutPage>, - replacement in sanakirja/src/environment/muttxn.rs at line 25
free_owned_pages: Vec<u64>,pub(crate) free_owned_pages: Vec<u64>, - replacement in sanakirja/src/environment/muttxn.rs at line 29
free_pages: Vec<u64>,pub(crate) free_pages: Vec<u64>, - edit in sanakirja/src/environment/muttxn.rs at line 268
debug!("decr_rc {:?}", off); - edit in sanakirja/src/environment/muttxn.rs at line 281
debug!("decr_rc, rc = {:?}", rc); - replacement in sanakirja/src/environment/muttxn.rs at line 284
}if rc & 0xfff > 2 {btree::put(self, &mut rc_, &(rc - 1), &())?;self.rc = Some(rc_);if rc & 0xfff > 2 {btree::put(self, &mut rc_, &(rc - 1), &())?;self.rc = Some(rc_);} else {// Implicit "1".self.rc = Some(rc_)} - replacement in sanakirja/src/environment/muttxn.rs at line 317
}if rc & 0xfff > 2 {btree::put(self, &mut rc_, &(rc - 1), &())?;self.rc = Some(rc_);if rc & 0xfff > 2 {btree::put(self, &mut rc_, &(rc - 1), &())?;self.rc = Some(rc_);} else {// Implicit "1".self.rc = Some(rc_);}