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

replication: reload URIs of anon replicas on reconfiguration

In case box.cfg.replication isn't update by box.cfg, we don't try to
reestablish replication connections, but we still need to reload URIs
(recreate IO stream contexts created from URIs) because a URI parameter
may store a path to an SSL certificate file, which could change. This
was done in commit 655290aa ("replication: always reload URIs on
reconfiguration").

There's a bug in the commit: it works as expected for appliers that
already connected in the past and received UUID but it ignores anonymous
appliers, i.e. appliers that never connected, as a result the following
code fails:

  -- Configure replication using a wrong SSL certificate.
  -- This leaves anonymous appliers reconnecting in the background.
  box.cfg{replication = {...}}
  -- Update the SSL certificate file and reload replication URIs.
  -- At this point, the anonymous applier should finally connect.
  box.cfg{replication = box.cfg.replication}

Needed for tarantool/tarantool-ee#432

NO_TEST=ee
NO_DOC=bug fix
NO_CHANGELOG=unreleased
parent 5ce31144
No related branches found
No related tags found
No related merge requests found
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