This is an archive of the discontinued Mercurial Phabricator instance.

radixbuf: add serialization support for linked nodes
AbandonedPublic

Authored by quark on Oct 23 2017, 4:12 PM.
Tags
None
Subscribers

Details

Reviewers
None
Group Reviewers
Restricted Project
Summary

The radixlink [1] used "linked list of integers" as its value type. That is
important for the obsstore usecase. For example, with "obsoleted node" as
the index key, "obsmarker offset" as the index value. One key could map to
multiple (but not too many) values.

Value types in radixbuf depends heavily on serialization. So let's add a
"LinkedNode" type with serialization support.

[1]: https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-June/099184.html

Test Plan

cargo test

Diff Detail

Repository
rFBHGX Facebook Mercurial Extensions
Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

quark created this revision.Oct 23 2017, 4:12 PM
Herald added a reviewer: Restricted Project. · View Herald TranscriptOct 23 2017, 4:12 PM
quark added a subscriber: durin42.Oct 23 2017, 4:12 PM
quark edited the summary of this revision. (Show Details)Oct 23 2017, 4:47 PM
quark edited the test plan for this revision. (Show Details)
quark abandoned this revision.Oct 23 2017, 11:59 PM

Seems better to implement the "Linked List" in Radix Index layer.