citus
citus copied to clipboard
Share more code between splits and moves
When introducing non-blocking shard split functionality it was based heavily on the non-blocking shard moves. However, differences between usage was slightly to big to be able to reuse the existing functions easily. So, most logical replication code was simply copied to dedicated shard split functions and modified for that purpose.
This PR tries to create a more generic logical replication infrastructure that can be used by both shard splits and shard moves. There's probably more code sharing possible in the future, but I believe this is at least a good start and addresses the lowest hanging fruit.