-
Notifications
You must be signed in to change notification settings - Fork 734
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
Replica flush the old data after RDB file is ok in disk-based replication #926
Replica flush the old data after RDB file is ok in disk-based replication #926
Conversation
…tion Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. Signed-off-by: Binbin <[email protected]>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## unstable #926 +/- ##
============================================
+ Coverage 70.37% 70.63% +0.25%
============================================
Files 112 114 +2
Lines 61505 61670 +165
============================================
+ Hits 43286 43559 +273
+ Misses 18219 18111 -108
|
Signed-off-by: Binbin <[email protected]>
Signed-off-by: Binbin <[email protected]>
@enjoy-binbin did we have a test failure here, or should we introduce new test for this case? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
It's not a breaking change?
The behavior change is that if the sync fails, the old data is still there, instead of deleted. It seems better. Nobody relies on the old behaviour I think...?
emmm, i don't think we have a test failure here, we don't have test that will cover this case, i test it in local. We should actually add a new test to verify this, but that will require us to add some debug code. (or i can do try to make the rename fail, i can take a try) |
I don't think it is a breaking change (but somehow it can be?). Yes, actually it is, if the following fails, we can still keep the data in memory.
|
@valkey-io/core-team Do you think this is a breaking change? |
Signed-off-by: Binbin <[email protected]>
I do not think it is a break change, but it changes some functions call position, but I can not find the reason why we should do this way. |
i am going to merge this one, i don't think it is a breaking change, does any of you have other concerns? |
Signed-off-by: Binbin <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: Ping Xie <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]>
…tion (valkey-io#926) Call emptyData right before rdbLoad to prevent errors in the middle and we drop the replication stream and leaving an empty database. The real changes is in disk-based part, the rest is just code movement. Signed-off-by: Binbin <[email protected]> Signed-off-by: naglera <[email protected]>
Call emptyData right before rdbLoad to prevent errors in the middle
and we drop the replication stream and leaving an empty database.
The real changes is in disk-based part, the rest is just code movement.