-
Notifications
You must be signed in to change notification settings - Fork 758
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Log unexpected $ENDOFF responses in dual channel replication #839
Conversation
I've tried to test a dual channel replication but forgot to add +copy for my replication user. As a result replica entered silent cycle like this: ``` * Connecting to PRIMARY 127.0.0.1:6379 * PRIMARY <-> REPLICA sync started * Non blocking connect for SYNC fired the event. * Primary replied to PING, replication can continue... * Trying a partial resynchronization (request ...) * PSYNC is not possible, initialize RDB channel. * Aborting dual channel sync ``` And primary got endless cycle like this: ``` * Replica 127.0.0.1:6380 asks for synchronization * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for '...', my replication IDs are '...' and '...') * Replica 127.0.0.1:6380 is capable of dual channel synchronization, and partial sync isn't possible. Full sync will continue with dedicated RDB channel. ``` There was no way to understand that replication user is missing +copy acl on notice log level. With this one-line change we get a warning message in our replica log. --------- Signed-off-by: secwall <[email protected]>
@secwall Can I ask what your use case was to manually be setting up the dual channel? |
I've been trying to test how the new features in version 8.0 work in our environment. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## unstable #839 +/- ##
============================================
- Coverage 70.38% 70.36% -0.02%
============================================
Files 112 112
Lines 61462 61463 +1
============================================
- Hits 43261 43250 -11
- Misses 18201 18213 +12
|
…io#839) I've tried to test a dual channel replication but forgot to add +sync for my replication user. As a result replica entered silent cycle like this: ``` * Connecting to PRIMARY 127.0.0.1:6379 * PRIMARY <-> REPLICA sync started * Non blocking connect for SYNC fired the event. * Primary replied to PING, replication can continue... * Trying a partial resynchronization (request ...) * PSYNC is not possible, initialize RDB channel. * Aborting dual channel sync ``` And primary got endless cycle like this: ``` * Replica 127.0.0.1:6380 asks for synchronization * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for '...', my replication IDs are '...' and '...') * Replica 127.0.0.1:6380 is capable of dual channel synchronization, and partial sync isn't possible. Full sync will continue with dedicated RDB channel. ``` There was no way to understand that replication user is missing +sync acl on notice log level. With this one-line change we get a warning message in our replica log. --------- Signed-off-by: secwall <[email protected]> Signed-off-by: mwish <[email protected]>
…io#839) I've tried to test a dual channel replication but forgot to add +sync for my replication user. As a result replica entered silent cycle like this: ``` * Connecting to PRIMARY 127.0.0.1:6379 * PRIMARY <-> REPLICA sync started * Non blocking connect for SYNC fired the event. * Primary replied to PING, replication can continue... * Trying a partial resynchronization (request ...) * PSYNC is not possible, initialize RDB channel. * Aborting dual channel sync ``` And primary got endless cycle like this: ``` * Replica 127.0.0.1:6380 asks for synchronization * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for '...', my replication IDs are '...' and '...') * Replica 127.0.0.1:6380 is capable of dual channel synchronization, and partial sync isn't possible. Full sync will continue with dedicated RDB channel. ``` There was no way to understand that replication user is missing +sync acl on notice log level. With this one-line change we get a warning message in our replica log. --------- Signed-off-by: secwall <[email protected]> Signed-off-by: mwish <[email protected]>
I've tried to test a dual channel replication but forgot to add +sync for my replication user. As a result replica entered silent cycle like this: ``` * Connecting to PRIMARY 127.0.0.1:6379 * PRIMARY <-> REPLICA sync started * Non blocking connect for SYNC fired the event. * Primary replied to PING, replication can continue... * Trying a partial resynchronization (request ...) * PSYNC is not possible, initialize RDB channel. * Aborting dual channel sync ``` And primary got endless cycle like this: ``` * Replica 127.0.0.1:6380 asks for synchronization * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for '...', my replication IDs are '...' and '...') * Replica 127.0.0.1:6380 is capable of dual channel synchronization, and partial sync isn't possible. Full sync will continue with dedicated RDB channel. ``` There was no way to understand that replication user is missing +sync acl on notice log level. With this one-line change we get a warning message in our replica log. --------- Signed-off-by: secwall <[email protected]>
I've tried to test a dual channel replication but forgot to add +sync for my replication user. As a result replica entered silent cycle like this: ``` * Connecting to PRIMARY 127.0.0.1:6379 * PRIMARY <-> REPLICA sync started * Non blocking connect for SYNC fired the event. * Primary replied to PING, replication can continue... * Trying a partial resynchronization (request ...) * PSYNC is not possible, initialize RDB channel. * Aborting dual channel sync ``` And primary got endless cycle like this: ``` * Replica 127.0.0.1:6380 asks for synchronization * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for '...', my replication IDs are '...' and '...') * Replica 127.0.0.1:6380 is capable of dual channel synchronization, and partial sync isn't possible. Full sync will continue with dedicated RDB channel. ``` There was no way to understand that replication user is missing +sync acl on notice log level. With this one-line change we get a warning message in our replica log. --------- Signed-off-by: secwall <[email protected]>
I've tried to test a dual channel replication but forgot to add +sync for my replication user. As a result replica entered silent cycle like this:
And primary got endless cycle like this:
There was no way to understand that replication user is missing +sync acl on notice log level. With this one-line change we get a warning message in our replica log.
Signed-off-by: secwall [email protected]