nickva commented on PR #5655: URL: https://github.com/apache/couchdb/pull/5655#issuecomment-3308152266
Yeah something like get/set can work and agree I am not a fan of how `props` is spread over all `#shard{}` copies in the shards cache, ideally it should be something like `dbname -> props` as a new mem3 cache (ets table). But it would be good ,I think, to have a general well working `props` and maybe like we discussed in the couchdb meeting even use security for it and get a nice optimization boost from not having to deal with get_db any longer. Props also has a bit of an extra benefit that it will automatically show up in the dbs_info result so users can inspect them the flags. So far I have been trying to extract the "update shard map" bit from mem3_reshard and make it a general utility. It's got some resharding specific bits in there and perhaps extra belts and suspenders like for instance: * before making the change the leader (first live node), pull changes from other nodes * after the change it force pushes the changes to all the nodes * there is a wait to propagate step where we wait for the change to take effect on other nodes Some of theses are there to protect against creating conflicts or handle the case where the ring may have just broken and such but maybe some of it overkill, too. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@couchdb.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org