Improving perfomance for generating next sequence value.
Is your feature request related to a problem? Please describe. When we generate next sequence value for reference tables we need ask qdb every value now. It's hard for qdb(etcd) perfomance.
Describe the solution you'd like I propose every router instance will get range of values for autoincrement. Router ask for new pool only when it's pool ends. It helps avoid extra network interconnection with coordinator. Size of range may be different for a reference table. Size range pool may be configured for every reference table. System will work like now when range pool equals 1.
We are short in time for real production client to start to use this feature, so I propose to incompatibly break all interfaces and rewrite NextVal qdb/protos method to use increment range value (so, without any qdb migration etc, just rewrite this).
first part: https://github.com/pg-sharding/spqr/pull/1447
MVP done here https://github.com/pg-sharding/spqr/pull/1452
@xelavopelk says that ideally there should be a different increment step for each table, so the current implementation is only an MVP. Waiting for next PRs!