-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Splitstore Enhanchements #6474
Splitstore Enhanchements #6474
Commits on Jul 4, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 4d3c73f - Browse repository at this point
Copy the full SHA 4d3c73fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5cca29d - Browse repository at this point
Copy the full SHA 5cca29dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 04f2e10 - Browse repository at this point
Copy the full SHA 04f2e10View commit details -
Configuration menu - View commit details
-
Copy full SHA for e3cbeec - Browse repository at this point
Copy the full SHA e3cbeecView commit details -
Configuration menu - View commit details
-
Copy full SHA for d7ceef1 - Browse repository at this point
Copy the full SHA d7ceef1View commit details -
mark from current epoch to boundary epoch when necessary
this is necessary to avoid wearing clown shoes when the node stays offline for an extended period of time (more than 1 finality). Basically it gets quite slow if we do the full 2 finality walk, so we try to avoid it unless necessary. The conditions under which a full walk is necessary is if there is a sync gap (most likely because the node was offline) during which the tracking of writes is inaccurate because we have not yet delivered the HeadChange notification. In this case, it is possible to have actually hot blocks to be tracked before the boundary and fail to mark them accordingly. So when we detect a sync gap, we do the full walk; if there is no sync gap, we can just use the much faster boundary epoch walk.
Configuration menu - View commit details
-
Copy full SHA for 3a9b7c5 - Browse repository at this point
Copy the full SHA 3a9b7c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for b2b7eb2 - Browse repository at this point
Copy the full SHA b2b7eb2View commit details -
Configuration menu - View commit details
-
Copy full SHA for e9f531b - Browse repository at this point
Copy the full SHA e9f531bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7cf75e6 - Browse repository at this point
Copy the full SHA 7cf75e6View commit details -
Configuration menu - View commit details
-
Copy full SHA for bdb97d6 - Browse repository at this point
Copy the full SHA bdb97d6View commit details -
Configuration menu - View commit details
-
Copy full SHA for d33a44e - Browse repository at this point
Copy the full SHA d33a44eView commit details -
Configuration menu - View commit details
-
Copy full SHA for fda291b - Browse repository at this point
Copy the full SHA fda291bView commit details -
Configuration menu - View commit details
-
Copy full SHA for fa64814 - Browse repository at this point
Copy the full SHA fa64814View commit details -
Configuration menu - View commit details
-
Copy full SHA for 41573f1 - Browse repository at this point
Copy the full SHA 41573f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c814cd - Browse repository at this point
Copy the full SHA 7c814cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 997f2c0 - Browse repository at this point
Copy the full SHA 997f2c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7b02673 - Browse repository at this point
Copy the full SHA 7b02673View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fe4261 - Browse repository at this point
Copy the full SHA 3fe4261View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b64485 - Browse repository at this point
Copy the full SHA 9b64485View commit details -
Configuration menu - View commit details
-
Copy full SHA for 421f05e - Browse repository at this point
Copy the full SHA 421f05eView commit details -
track writeEpoch relative to current wall clock time
The issue: head change notifications are not emitted until after catching up, which results in all writes during a catch up period being tracked at the base epoch.
Configuration menu - View commit details
-
Copy full SHA for bb17608 - Browse repository at this point
Copy the full SHA bb17608View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66f1630 - Browse repository at this point
Copy the full SHA 66f1630View commit details -
Configuration menu - View commit details
-
Copy full SHA for 933c786 - Browse repository at this point
Copy the full SHA 933c786View commit details -
Configuration menu - View commit details
-
Copy full SHA for b789759 - Browse repository at this point
Copy the full SHA b789759View commit details -
coalesce back-to-back compactions
get rid of the CompactionCold construct, run a single compaction on catch up
Configuration menu - View commit details
-
Copy full SHA for c4d95de - Browse repository at this point
Copy the full SHA c4d95deView commit details -
Configuration menu - View commit details
-
Copy full SHA for a178c1f - Browse repository at this point
Copy the full SHA a178c1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for a25ac80 - Browse repository at this point
Copy the full SHA a25ac80View commit details -
Configuration menu - View commit details
-
Copy full SHA for 79d2148 - Browse repository at this point
Copy the full SHA 79d2148View commit details -
CompactionThreshold should be 4 finalities
otherwise we'll wear clown shoes with the slack and end up in continuous compaction.
Configuration menu - View commit details
-
Copy full SHA for a21f559 - Browse repository at this point
Copy the full SHA a21f559View commit details -
Configuration menu - View commit details
-
Copy full SHA for 30dbe49 - Browse repository at this point
Copy the full SHA 30dbe49View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0390285 - Browse repository at this point
Copy the full SHA 0390285View commit details -
Configuration menu - View commit details
-
Copy full SHA for fc247e4 - Browse repository at this point
Copy the full SHA fc247e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for fce7b8d - Browse repository at this point
Copy the full SHA fce7b8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for a53c4e1 - Browse repository at this point
Copy the full SHA a53c4e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for b187b5c - Browse repository at this point
Copy the full SHA b187b5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 375a179 - Browse repository at this point
Copy the full SHA 375a179View commit details -
Configuration menu - View commit details
-
Copy full SHA for 50ebaf2 - Browse repository at this point
Copy the full SHA 50ebaf2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 649b7dd - Browse repository at this point
Copy the full SHA 649b7ddView commit details -
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.
Configuration menu - View commit details
-
Copy full SHA for cb665d0 - Browse repository at this point
Copy the full SHA cb665d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 65ccc99 - Browse repository at this point
Copy the full SHA 65ccc99View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6af3a23 - Browse repository at this point
Copy the full SHA 6af3a23View commit details -
use internal get during walk to avoid blowing the compaction txn
otherwise the walk itself precludes purge... duh!
Configuration menu - View commit details
-
Copy full SHA for 31497f4 - Browse repository at this point
Copy the full SHA 31497f4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a71c68 - Browse repository at this point
Copy the full SHA 4a71c68View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9fda61a - Browse repository at this point
Copy the full SHA 9fda61aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 40ff5bf - Browse repository at this point
Copy the full SHA 40ff5bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7ebef6d - Browse repository at this point
Copy the full SHA 7ebef6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for dec61fa - Browse repository at this point
Copy the full SHA dec61faView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b315e9 - Browse repository at this point
Copy the full SHA 0b315e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for b2b13bb - Browse repository at this point
Copy the full SHA b2b13bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 57e25ae - Browse repository at this point
Copy the full SHA 57e25aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7307eb5 - Browse repository at this point
Copy the full SHA 7307eb5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4bed316 - Browse repository at this point
Copy the full SHA 4bed316View commit details -
Configuration menu - View commit details
-
Copy full SHA for e29b64c - Browse repository at this point
Copy the full SHA e29b64cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7de0771 - Browse repository at this point
Copy the full SHA 7de0771View commit details -
Configuration menu - View commit details
-
Copy full SHA for 09efed5 - Browse repository at this point
Copy the full SHA 09efed5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 40f42db - Browse repository at this point
Copy the full SHA 40f42dbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 90dc274 - Browse repository at this point
Copy the full SHA 90dc274View commit details -
Configuration menu - View commit details
-
Copy full SHA for f97535d - Browse repository at this point
Copy the full SHA f97535dView commit details -
treat Has as an implicit Write
Rationale: the VM uses the Has check to avoid issuing a duplicate Write in the blockstore. This means that live objects that would be otherwise written are not actually written, resulting in the first write epoch being considered the write epoch.
Configuration menu - View commit details
-
Copy full SHA for 6a3cbea - Browse repository at this point
Copy the full SHA 6a3cbeaView commit details -
Configuration menu - View commit details
-
Copy full SHA for e472cac - Browse repository at this point
Copy the full SHA e472cacView commit details -
bolt performance leaves something to be desired; doing a single Put takes 10ms, about the same time as batching thousands of them.
Configuration menu - View commit details
-
Copy full SHA for be6cc2c - Browse repository at this point
Copy the full SHA be6cc2cView commit details -
Configuration menu - View commit details
-
Copy full SHA for a29947d - Browse repository at this point
Copy the full SHA a29947dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f473f5 - Browse repository at this point
Copy the full SHA 7f473f5View commit details -
Configuration menu - View commit details
-
Copy full SHA for d0bfe42 - Browse repository at this point
Copy the full SHA d0bfe42View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e8e927 - Browse repository at this point
Copy the full SHA 3e8e927View commit details -
Configuration menu - View commit details
-
Copy full SHA for aeaa59d - Browse repository at this point
Copy the full SHA aeaa59dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2faa4aa - Browse repository at this point
Copy the full SHA 2faa4aaView commit details -
genesis is written (!) before starting the splitstore, so curTs is nil
Configuration menu - View commit details
-
Copy full SHA for b3ddaa5 - Browse repository at this point
Copy the full SHA b3ddaa5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4de0cd9 - Browse repository at this point
Copy the full SHA 4de0cd9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9828673 - Browse repository at this point
Copy the full SHA 9828673View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13a6743 - Browse repository at this point
Copy the full SHA 13a6743View commit details -
do the dag walk for deep write tracking during flush
avoid crawling everything to a halt
Configuration menu - View commit details
-
Copy full SHA for a98a062 - Browse repository at this point
Copy the full SHA a98a062View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd92c23 - Browse repository at this point
Copy the full SHA bd92c23View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4071488 - Browse repository at this point
Copy the full SHA 4071488View commit details -
Configuration menu - View commit details
-
Copy full SHA for da00fc6 - Browse repository at this point
Copy the full SHA da00fc6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1d41e15 - Browse repository at this point
Copy the full SHA 1d41e15View commit details -
Configuration menu - View commit details
-
Copy full SHA for 484dfae - Browse repository at this point
Copy the full SHA 484dfaeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d6bcd7 - Browse repository at this point
Copy the full SHA 9d6bcd7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 637fbf6 - Browse repository at this point
Copy the full SHA 637fbf6View commit details -
bubble up dependent txn ref errors
This cause Has to return false if it fails to traverse/protect all links, which would cause the vm to recompute.
Configuration menu - View commit details
-
Copy full SHA for b87295d - Browse repository at this point
Copy the full SHA b87295dView commit details -
skip moving cold blocks when running with a noop coldstore
it is a noop but it still takes (a lot of) time because it has to read all the cold blocks.
Configuration menu - View commit details
-
Copy full SHA for 68bc5d2 - Browse repository at this point
Copy the full SHA 68bc5d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for e4bb4be - Browse repository at this point
Copy the full SHA e4bb4beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5834231 - Browse repository at this point
Copy the full SHA 5834231View commit details -
Configuration menu - View commit details
-
Copy full SHA for 39723bb - Browse repository at this point
Copy the full SHA 39723bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 736d6a3 - Browse repository at this point
Copy the full SHA 736d6a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8157f88 - Browse repository at this point
Copy the full SHA 8157f88View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d6cabd - Browse repository at this point
Copy the full SHA 9d6cabdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 228a435 - Browse repository at this point
Copy the full SHA 228a435View commit details -
Configuration menu - View commit details
-
Copy full SHA for 184d380 - Browse repository at this point
Copy the full SHA 184d380View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b03316 - Browse repository at this point
Copy the full SHA 2b03316View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6f58fdc - Browse repository at this point
Copy the full SHA 6f58fdcView commit details -
Configuration menu - View commit details
-
Copy full SHA for d79e4da - Browse repository at this point
Copy the full SHA d79e4daView commit details -
Configuration menu - View commit details
-
Copy full SHA for c5cf8e2 - Browse repository at this point
Copy the full SHA c5cf8e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 642f0e4 - Browse repository at this point
Copy the full SHA 642f0e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 00fcf6d - Browse repository at this point
Copy the full SHA 00fcf6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 68a8350 - Browse repository at this point
Copy the full SHA 68a8350View commit details -
Configuration menu - View commit details
-
Copy full SHA for d476a3d - Browse repository at this point
Copy the full SHA d476a3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f2b604 - Browse repository at this point
Copy the full SHA 1f2b604View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f7ae1f - Browse repository at this point
Copy the full SHA 5f7ae1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6fa2cd2 - Browse repository at this point
Copy the full SHA 6fa2cd2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36f9364 - Browse repository at this point
Copy the full SHA 36f9364View commit details -
Configuration menu - View commit details
-
Copy full SHA for eafffc1 - Browse repository at this point
Copy the full SHA eafffc1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 08cad30 - Browse repository at this point
Copy the full SHA 08cad30View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0a1d7b3 - Browse repository at this point
Copy the full SHA 0a1d7b3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 19d1b1f - Browse repository at this point
Copy the full SHA 19d1b1fView commit details -
- remove defunct tracking store implementations - update splitstore node config - use mark set type config option (defaulting to mapts); a memory constrained node may want to use an on-disk one
Configuration menu - View commit details
-
Copy full SHA for 190cb18 - Browse repository at this point
Copy the full SHA 190cb18View commit details -
Configuration menu - View commit details
-
Copy full SHA for 95c3aae - Browse repository at this point
Copy the full SHA 95c3aaeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e56fff - Browse repository at this point
Copy the full SHA 8e56fffView commit details -
Configuration menu - View commit details
-
Copy full SHA for 028a5c4 - Browse repository at this point
Copy the full SHA 028a5c4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c7a89a - Browse repository at this point
Copy the full SHA 2c7a89aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f02428 - Browse repository at this point
Copy the full SHA 1f02428View commit details -
Configuration menu - View commit details
-
Copy full SHA for 680af8e - Browse repository at this point
Copy the full SHA 680af8eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4d286da - Browse repository at this point
Copy the full SHA 4d286daView commit details -
Configuration menu - View commit details
-
Copy full SHA for f124389 - Browse repository at this point
Copy the full SHA f124389View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13d612f - Browse repository at this point
Copy the full SHA 13d612fView commit details -
sort cold objects before deleting
so that we can't shoot ourselves in the foot by deleting the constituents of a DAG while it is still in the hotstore.
Configuration menu - View commit details
-
Copy full SHA for 40c271c - Browse repository at this point
Copy the full SHA 40c271cView commit details -
simplify transactional protection logic
Now that we delete objects heaviest first, we don't have to do deep walk and rescan gymnastics.
Configuration menu - View commit details
-
Copy full SHA for f33d4e7 - Browse repository at this point
Copy the full SHA f33d4e7View commit details -
reduce length of critical section
Just the purge; the rest is not critical -- e.g. it's ok if we do some duplicate copies to the coldstore, we'll have gc soon.
Configuration menu - View commit details
-
Copy full SHA for 94efae4 - Browse repository at this point
Copy the full SHA 94efae4View commit details -
Configuration menu - View commit details
-
Copy full SHA for b08e0b7 - Browse repository at this point
Copy the full SHA b08e0b7View commit details -
reduce CompactionThreshold to 5 finalities
so that we run compaction every finality, once we've first compacted
Configuration menu - View commit details
-
Copy full SHA for db53859 - Browse repository at this point
Copy the full SHA db53859View commit details
Commits on Jul 5, 2021
-
deal with incomplete objects that need to be marked and protected
seems that something is writing DAGs before its consituents, which causes problems.
Configuration menu - View commit details
-
Copy full SHA for 1726eb9 - Browse repository at this point
Copy the full SHA 1726eb9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3597192 - Browse repository at this point
Copy the full SHA 3597192View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c41f52 - Browse repository at this point
Copy the full SHA 4c41f52View commit details -
Configuration menu - View commit details
-
Copy full SHA for c81ae5f - Browse repository at this point
Copy the full SHA c81ae5fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 839f7bd - Browse repository at this point
Copy the full SHA 839f7bdView commit details -
they don't make it to the blockstore anyway
Configuration menu - View commit details
-
Copy full SHA for 2ea2abc - Browse repository at this point
Copy the full SHA 2ea2abcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 918a7ec - Browse repository at this point
Copy the full SHA 918a7ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ec834b - Browse repository at this point
Copy the full SHA 3ec834bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d7709de - Browse repository at this point
Copy the full SHA d7709deView commit details -
Configuration menu - View commit details
-
Copy full SHA for d8b8d75 - Browse repository at this point
Copy the full SHA d8b8d75View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b7153b - Browse repository at this point
Copy the full SHA 0b7153bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 59936ef - Browse repository at this point
Copy the full SHA 59936efView commit details -
get rid of ugly missing reference handling code
those missing objects don't seem to ever get there, are they from an abandoned fork?
Configuration menu - View commit details
-
Copy full SHA for fa195be - Browse repository at this point
Copy the full SHA fa195beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 59639a0 - Browse repository at this point
Copy the full SHA 59639a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a099b7 - Browse repository at this point
Copy the full SHA 5a099b7View commit details -
Configuration menu - View commit details
-
Copy full SHA for af8cf71 - Browse repository at this point
Copy the full SHA af8cf71View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73d0799 - Browse repository at this point
Copy the full SHA 73d0799View commit details -
really, it's concurrent marking and there is no reason to have two different marksets
Configuration menu - View commit details
-
Copy full SHA for 3477d26 - Browse repository at this point
Copy the full SHA 3477d26View commit details -
Configuration menu - View commit details
-
Copy full SHA for e859942 - Browse repository at this point
Copy the full SHA e859942View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd436ab - Browse repository at this point
Copy the full SHA bd436abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 51ab891 - Browse repository at this point
Copy the full SHA 51ab891View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2cbd3fa - Browse repository at this point
Copy the full SHA 2cbd3faView commit details -
use walkObjectRaw for computing object weights
cids that come out of the hotstore with ForEach are raw.
Configuration menu - View commit details
-
Copy full SHA for c6ad8fd - Browse repository at this point
Copy the full SHA c6ad8fdView commit details -
use hashes as keys in weight map to avoid duplicate work
otherwise the root object will be raw, but internal references will be dag; duplicate work.
Configuration menu - View commit details
-
Copy full SHA for 525a2c7 - Browse repository at this point
Copy the full SHA 525a2c7View commit details
Commits on Jul 6, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 0659235 - Browse repository at this point
Copy the full SHA 0659235View commit details -
Configuration menu - View commit details
-
Copy full SHA for bf7aeb3 - Browse repository at this point
Copy the full SHA bf7aeb3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 55a9e0c - Browse repository at this point
Copy the full SHA 55a9e0cView commit details -
really optimize computing object weights
sort is still taking a long time, this should be as fast as it gets.
Configuration menu - View commit details
-
Copy full SHA for 169ab26 - Browse repository at this point
Copy the full SHA 169ab26View commit details -
Configuration menu - View commit details
-
Copy full SHA for c4ae3e0 - Browse repository at this point
Copy the full SHA c4ae3e0View commit details -
Configuration menu - View commit details
-
Copy full SHA for dc8139a - Browse repository at this point
Copy the full SHA dc8139aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c51450 - Browse repository at this point
Copy the full SHA 5c51450View commit details -
Configuration menu - View commit details
-
Copy full SHA for fdff1be - Browse repository at this point
Copy the full SHA fdff1beView commit details -
Configuration menu - View commit details
-
Copy full SHA for c1c2586 - Browse repository at this point
Copy the full SHA c1c2586View commit details -
Configuration menu - View commit details
-
Copy full SHA for f2f4af6 - Browse repository at this point
Copy the full SHA f2f4af6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e2af11 - Browse repository at this point
Copy the full SHA 0e2af11View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90da622 - Browse repository at this point
Copy the full SHA 90da622View commit details
Commits on Jul 7, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 05dbbe9 - Browse repository at this point
Copy the full SHA 05dbbe9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6cc2112 - Browse repository at this point
Copy the full SHA 6cc2112View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83c30dc - Browse repository at this point
Copy the full SHA 83c30dcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9dbb2e0 - Browse repository at this point
Copy the full SHA 9dbb2e0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 451ddf5 - Browse repository at this point
Copy the full SHA 451ddf5View commit details -
Configuration menu - View commit details
-
Copy full SHA for ec586a8 - Browse repository at this point
Copy the full SHA ec586a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for aec2ba2 - Browse repository at this point
Copy the full SHA aec2ba2View commit details -
don't nil the mark sets on close, it's dangerous.
a concurrent marking can panic.
Configuration menu - View commit details
-
Copy full SHA for c6421f8 - Browse repository at this point
Copy the full SHA c6421f8View commit details -
Configuration menu - View commit details
-
Copy full SHA for fee50b1 - Browse repository at this point
Copy the full SHA fee50b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f80836 - Browse repository at this point
Copy the full SHA 4f80836View commit details
Commits on Jul 8, 2021
-
check the closing state variable often
so that we have a reasonably quick graceful shutdown
Configuration menu - View commit details
-
Copy full SHA for f5c45bd - Browse repository at this point
Copy the full SHA f5c45bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 48f13a4 - Browse repository at this point
Copy the full SHA 48f13a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for e6eacbd - Browse repository at this point
Copy the full SHA e6eacbdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9aa4f3b - Browse repository at this point
Copy the full SHA 9aa4f3bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5cf1e09 - Browse repository at this point
Copy the full SHA 5cf1e09View commit details -
move check for closure in walkChain
so that we don't do it too often and also cover warmup.
Configuration menu - View commit details
-
Copy full SHA for 00d7772 - Browse repository at this point
Copy the full SHA 00d7772View commit details -
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for fa30ac8 - Browse repository at this point
Copy the full SHA fa30ac8View commit details -
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for c053784 - Browse repository at this point
Copy the full SHA c053784View commit details -
fix potential deadlock in View
As pointed out by magik, it is possible to deadlock if the view callback performs a blockstore operation while a Lock is pending. This fixes the issue by optimistically tracking the reference before actually calling the underlying View and limiting the scope of the lock.
Configuration menu - View commit details
-
Copy full SHA for 60dd97c - Browse repository at this point
Copy the full SHA 60dd97cView commit details -
Configuration menu - View commit details
-
Copy full SHA for b661112 - Browse repository at this point
Copy the full SHA b661112View commit details
Commits on Jul 9, 2021
-
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.
Configuration menu - View commit details
-
Copy full SHA for abdf4a1 - Browse repository at this point
Copy the full SHA abdf4a1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 909f703 - Browse repository at this point
Copy the full SHA 909f703View commit details -
Configuration menu - View commit details
-
Copy full SHA for de5e21b - Browse repository at this point
Copy the full SHA de5e21bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f89d26 - Browse repository at this point
Copy the full SHA 4f89d26View commit details -
Configuration menu - View commit details
-
Copy full SHA for 565faff - Browse repository at this point
Copy the full SHA 565faffView commit details -
Configuration menu - View commit details
-
Copy full SHA for acc4c37 - Browse repository at this point
Copy the full SHA acc4c37View commit details -
dont mark references inline; instad rely on the main compaction threa…
…d to do concurrent marking The problem is that it is possible that an inline marking might take minutes for some objects (infrequent, but still possible for state roots and prohibitive if that's a block validation). So we simply track references continuously and rely on the main compaction thread to trigger concurrent marking for all references at opportune moments. Assumption: we can mark references faster than they are created during purge or else we'll never purge anything.
Configuration menu - View commit details
-
Copy full SHA for da0feb3 - Browse repository at this point
Copy the full SHA da0feb3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 095d742 - Browse repository at this point
Copy the full SHA 095d742View commit details -
Configuration menu - View commit details
-
Copy full SHA for 18161fe - Browse repository at this point
Copy the full SHA 18161feView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0a1cff - Browse repository at this point
Copy the full SHA c0a1cffView commit details -
Configuration menu - View commit details
-
Copy full SHA for b9a5ea8 - Browse repository at this point
Copy the full SHA b9a5ea8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4129038 - Browse repository at this point
Copy the full SHA 4129038View commit details -
Configuration menu - View commit details
-
Copy full SHA for f5ae10e - Browse repository at this point
Copy the full SHA f5ae10eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 870a47f - Browse repository at this point
Copy the full SHA 870a47fView commit details
Commits on Jul 10, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 0c5e336 - Browse repository at this point
Copy the full SHA 0c5e336View commit details -
Configuration menu - View commit details
-
Copy full SHA for df9670c - Browse repository at this point
Copy the full SHA df9670cView commit details
Commits on Jul 13, 2021
-
always return the waitgroup in protectView
so that we preclude the following scenario: Start compaction. Start view. Finish compaction. Start compaction. which would not wait for the view to complete.
Configuration menu - View commit details
-
Copy full SHA for 759594d - Browse repository at this point
Copy the full SHA 759594dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 60212c8 - Browse repository at this point
Copy the full SHA 60212c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 04abd19 - Browse repository at this point
Copy the full SHA 04abd19View commit details -
fix view waiting issues with the WaitGroup
We can add after Wait is called, which is problematic with WaitGroups. This instead uses a mx/cond combo and waits while the count is > 0. The only downside is that we might needlessly wait for (a bunch) of views that started while the txn is active, but we can live with that.
Configuration menu - View commit details
-
Copy full SHA for 257423e - Browse repository at this point
Copy the full SHA 257423eView commit details -
Configuration menu - View commit details
-
Copy full SHA for af39952 - Browse repository at this point
Copy the full SHA af39952View commit details