Skip to content
Snippets Groups Projects
Commit c383806d authored by Vladimir Davydov's avatar Vladimir Davydov Committed by Roman Tsisyk
Browse files

replication: finish bootstrap from 1.6 only when replica id is received

In 1.7 the join procedure consists of two phases: initial, during which
we send the last snapshot, and final, when we send xlogs written after
the snapshot. Between the two phases, the replica uuid is added to the
cluster table on the master, so by the time join is finished, the
replica should have received its id.

However, on 1.6 there's no final join phase, instead the master expects
the replica to receive xlogs upon subscription. As a result, the replica
doesn't receive its id until it sends the subscribe request.  This is
not expected by 1.7 clients - they fail with ER_UNKNOWN_REPLICA.

Fix this problem by making 1.7 replicas proceed to subscription and wait
until the id is received before completing bootstrap from 1.6 master.

Closes #2702
parent 685416d9
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment