mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-21 17:10:35 +00:00
Tags are a useful mechanism that could be used outside of alternator namespace. My motivation to move tags_extension and other utilities to db/tags/ was that I wanted to use them to mark "synchronous mode" views. I have extracted `get_tags_of_table`, `find_tag` and `update_tags` method to db/tags/utils.cc and moved alternator/tags_extension.hh to db/tags/. The signature of `get_tags_of_table` was changed from `const std::map<sstring, sstring>&` to `const std::map<sstring, sstring>*` Original behavior of this function was to throw an `alternator::api_error` exception. This was undesirable, as it introduced a dependency on the alternator module. I chose to change it to return a potentially null value, and added a wrapper function to the alternator module - `get_tags_of_table_or_throw` to keep the previous throwing behavior.