Implementation of uniondatapackstore that can hold generic stores.
This diff doesn't support python data stores yet, but provides an abstraction
to the stores that can be used by uniondatapackstore.
DeltaChain and DeltaChainLink wrappers will allow to use C and python chains
and chain links.
Details
- Reviewers
durham ryanmce simonfar - Group Reviewers
Restricted Project - Commits
- rFBHGX8cacf9669a0a: cstore: generic uniondatapackstore
- Ensure that unit tests pass
- Test on fbsource to ensure new code is executed by printfing to stdout
- Ensure the code is built successfully on macOS
Diff Detail
- Repository
- rFBHGX Facebook Mercurial Extensions
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
Event Timeline
Overall looks really good. Tiny comments inline, but the only blocking things are:
Did you ensure that this builds on OSX?
Could you expand the test plan to also say how you ensured this code was running? Like you had printf's in the code and saw the output. This is a risky enough change that I just want to make sure it's actually being executed.
cstore/datastore.h | ||
---|---|---|
150 | Seems this line should be deleted? | |
cstore/key.h | ||
16 ↗ | (On Diff #1387) | Why is this required? |
Thank you for the comment. I will test it a little bit more tomorrow to ensure there are no bugs on both a devserver and mac.
cstore/key.h | ||
---|---|---|
16 ↗ | (On Diff #1387) | Ooops. That's strange that I missed that. It is not required now, it was needed for my previous implementation of python data stores and it got here by accident. |
Rebased onto stable and added necessary includes so that build is successful on macOS
DeltaChain costructor no longer accepts a pointer to the delta_chain_t. It accepts delta_chain_t by value and makes
a shallow copy. Therefore, it is responsible for memory management of that delta_chain_t.
alphabetical