[go: up one dir, main page]

Draft: Scoru: Replace irmin durable with in-memory one

Context

Previous MR !8139 (merged)

This MR basically takes this commit as a foundation 4eab98f0 and then the following fixes are done:

  • Empty nodes in Lazy_fs.remove are pruned. Without this tweak, it diverged on count_subtree and copy_tree and move_tree functions of snapshotted durable (in two latter cases because an exception should be thrown when subtree doesn't exist)

  • Durable.hash/Durable.subtree_name_at/Durable.list have been rewritten to conform the old implementation

  • Also backward compatibility for hash, list and subtree_name_at was preserved by encoding back to irmin tree in those functions

I tested it several times with 2 * 10^5 operations generative test, tests detected only mentioned bugs.

Also no significant improvement in sense of performance (almost the same). It's the case because in rollup node uses persistent storage underline but in tests both implementations use in-memory repr.

Manually testing the MR

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Ilya Peresadin

Merge request reports

Loading