I just completed extracting a majority of our ArRegion code into a new gem, activerecord-id_regions via https://github.com/ManageIQ/manageiq/pull/15281. This new gem is a generic extraction and thus could be use by any Rails app that needs id partitioning. In the gem I’ve cited merge replication as a possible reason one might use it.
Part of my need to do it now is that I will shortly be extracting the ManageIQ db migrations into a separate repo, and in that repo I am testing the migrations against a dummy Rails app that includes none of our model code, to ensure that the migrations are pure. Thus, I need to have the id regioning available in a non-ManageIQ Rails app. Additionally, this will allow us to create more standalone-type Ruby applications that might only need the models for talking to the database, but that need to be aware of the ManageIQ regions, thus slimming them down saving memory.