Now in XC it is possible to define multiple primary nodes with CREATE NODE, however only one node is really registered in the session parameters.
Multiple nodes are basically necessary because some tables might be distributed on a subset of nodes that do not contain primary.
So what is necessary here is to add support for multiple primary nodes, and enforce the correct selection of a primary node if it is contained.
In case no primary node can be found in the node list of relation, we need to pick up the 1st one.
Q3.
Each coordinator should assign the same primary node for a given table. Different table may have different primary node.
At present, we have only one primary node common to all the replicated table, which is visible to DBA, but this may not be visible. Coordinator handling create table can assign one of the available datanode as the primary node and propagate it to all the other coordinators.
Nor a beta blocker.
Table-specific primary node will eliminate this problem.