Commit Graph

18 Commits

Author SHA1 Message Date
vyzo
45c2f34295 refactor marksets for critical section on-disk persistence 2022-01-28 15:41:33 +02:00
vyzo
25284b5325 refactor: eliminate distinction between markset and markset visitors 2022-01-25 16:31:45 +02:00
vyzo
eb0a62e9e9 RIP bloom filter markset; you weren't used anyway. 2021-08-10 10:47:01 +03:00
vyzo
742c85bf81 add SupportsVisitor in the markset env interface 2021-08-10 10:47:01 +03:00
vyzo
b83b5405c6 widen MarkSetVisitor interface and get rid of the casts 2021-08-10 10:47:01 +03:00
vyzo
cb3c53664d unify marksets and visitors 2021-08-10 10:47:01 +03:00
vyzo
1323d8fb20 markset-backed visitors 2021-08-10 10:47:01 +03:00
vyzo
54a6968327 add badger-backed markset implementation 2021-07-23 12:47:18 +03:00
vyzo
abdf4a161a explicitly switch marksets for concurrent marking
this has very noticeable impact in initial marking time; it also allows us
to get rid of the confusing ts monikers.
2021-07-09 04:26:36 +03:00
vyzo
48f13a43b7 intelligently close marksets and signal errors in concurrent operations 2021-07-08 10:18:43 +03:00
vyzo
4f808367f8 fix lint 2021-07-07 21:32:58 +03:00
vyzo
451ddf50ab RIP bbolt-backed markset 2021-07-07 16:39:37 +03:00
vyzo
fdff1bebc9 move map markset implementation to its own file 2021-07-06 14:44:40 +03:00
vyzo
228a435ba7 rework tracking logic; do it lazily and far more efficiently 2021-07-04 18:38:28 +03:00
vyzo
f97535d87e store the hash in map markset 2021-07-04 18:38:28 +03:00
vyzo
6af3a23dd4 use a map for txn protection mark set 2021-07-04 18:38:28 +03:00
vyzo
cb665d07e0 fix transactional race during compaction
It is possible for an object to be written or recreated (and checked with Has)
after the mark completes and during the purge; if this happens we will purge
a live block.
2021-07-04 18:38:28 +03:00
Raúl Kripalani
4b1e1f4b52 rename liveset => markset; rename snoop => tracking store; docs. 2021-03-05 14:46:18 +02:00