-
Notifications
You must be signed in to change notification settings - Fork 23.7k
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
Implement Multi Part AOF mechanism to avoid AOFRW overheads. #9788
Merged
oranagra
merged 65 commits into
redis:unstable
from
chenyang8094:feature-multi-aof-use-meta
Jan 3, 2022
Merged
Changes from all commits
Commits
Show all changes
65 commits
Select commit
Hold shift + click to select a range
4be5c24
Support Multi Part Aof
chenyang8094 a55874a
Fix typo
chenyang8094 bb5e815
Make openNewIncrAofForAppend atomic
chenyang8094 51eb9d6
Add comments
chenyang8094 3652b2f
Add comments
chenyang8094 8b24ff1
Update comments
chenyang8094 31d6a3e
Remove aof-child-rewrite-delay config
chenyang8094 3989593
Change file suffix
chenyang8094 43b6d20
Update test
chenyang8094 7be0c38
Update test
chenyang8094 41084af
Update aof_last_incr_size when server start
chenyang8094 b63dd4f
Trigger ci
chenyang8094 71eb11f
Unlink base file when rename failed
chenyang8094 ef150ae
Add format suffix to file name
chenyang8094 47e8d22
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 3d079a3
Change TCL test name
chenyang8094 243ebbb
Add comments
chenyang8094 e9febd0
Fix typo
chenyang8094 e77ea5e
Add error msg when load err
chenyang8094 1f8d724
Use strchr to judge line
chenyang8094 69e86ff
Refact aofLoadManifestFromDisk
chenyang8094 341484f
Enhance test
chenyang8094 d410061
Add comments
chenyang8094 a1e0cc2
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 74394dc
Scheduled an AOFRW when upgrading from an old version redis
chenyang8094 b510cdf
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 8d59d96
Use dir to track AOFs
chenyang8094 ee6c516
Use aofname as temp dir prefix
chenyang8094 2e800e5
Use redis_stat to avoid CodeQL
chenyang8094 f3d4a26
Remove dir check
chenyang8094 2eaebec
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 b71354a
Fix codeql
chenyang8094 f506c9b
Fix crash in sentinel mode
chenyang8094 7ac8973
Change ret type of dirCreateIfMissing
chenyang8094 089e7b3
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 eda8aff
Add appenddirname configration
chenyang8094 94f8f03
Fix memleak
chenyang8094 3f38035
Code format
chenyang8094 55cf2a3
Update config comments
chenyang8094 9b77d3a
Chnage name rule
chenyang8094 85b066f
Update comments
chenyang8094 1abe145
Update comments
chenyang8094 b8bf24a
Update comments
chenyang8094 aed4631
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 7f7dda8
Only the last aof can be truncated
chenyang8094 83d3b96
Update test
chenyang8094 0fbaba6
Enhance test
chenyang8094 4d4e2be
Fix test
chenyang8094 29d7d74
Fix test
chenyang8094 04cf84e
Remove aof_rewrite_buffer_length field
chenyang8094 5a17380
Update conf comments
chenyang8094 cd367d4
Update conf comments
chenyang8094 be84849
Update conf comments
chenyang8094 59b0f15
Update test
chenyang8094 ed6d1e3
Update rdb-preamble.aof
chenyang8094 1ce724d
Add load check
chenyang8094 b26f50c
Valgrind suppression
chenyang8094 3467f51
Update .gitignore
chenyang8094 6a62c8d
Make sure aofManifestFree safe when prepareForShutdown
chenyang8094 3619111
Update log messages
chenyang8094 ed656d3
Update comments
chenyang8094 c2c108b
Add ENOENT check
chenyang8094 f0df365
Merge remote-tracking branch 'origin/unstable' into feature-multi-aof…
oranagra 8ab1c3b
Code review cleanups.
yossigo f4bae58
Merge branch 'unstable' into feature-multi-aof-use-meta
chenyang8094 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
should be
appendonly.aof*
instead ofappendonly.aof.*
now,
appendonly.aof
will not be ignored.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.
Maybe you're right, but the current implementation doesn't create a file named
appendonly.aof
unless you manually copy an old-style AOF for upgrade testing. So I think we just need to ignore the file we're going to create. @oranagra WDYT?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.
i think it's a good idea to ignore both.
i.e. both the ones we create, and the ones we created in the past, that are still left in the folder.
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.
Only developers pay attention to
.gitignore
, and when I updated theunstable brance
code,appendonly.aof
caught my attention, so I started this discussion.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.
@oranagra @yangbodong22011 Sounds reasonable, I'll make a PR to add it, thanks.