Skip to content

refactor: split Topology struct logic

Егор Ивков requested to merge refactor-topology into master

Summary

  • refactor: split Topology struct logic
    • Removes topology struct
    • Moves most of its logic to join.rs and update_instance.rs
    • Adds Cache struct in storage.rs for fields that are derived from Clusterwide storage, but are costly to recalculate each time we update the instance (which from my point of view is quite often).
  • refactor: correct and refactor tests after topology split
    • Corrects tests to fit the new logic
    • Replaces macros with functions (in places where macros are not necessary) for readability and as part of our general effort to have less macros
  • doc: add doc comments to Instance functions

Close #337 (closed), #329 (closed)

Ensure that

  • New code is covered by tests
  • API is documented
  • Changelog is up to date
  • (if Lua API changed) Lua API version is bumped in luamod.rs
  • (if API docs changed) A follow-up doc issue is created in picodata/docs and linked here
Edited by Yaroslav Dynnikov

Merge request reports