Hiredis: Advanced async-handling#983
Open
oshamash wants to merge 1 commit into
Open
Conversation
Author
|
@michael-grunder I took #822 (from #638) and decided to match to upstream, I think it's about time community will have access to ASYNC optimizations using the native hiredis client 😄 |
Collaborator
|
I'm going to merge this but first I need to make sure that the change to I think it's OK but we've had this kind of symbol conflict before (it's why all the sds symbols in hiredis are prefixed with |
Comment on lines
+327
to
+329
| while (NULL != (de = dictNext(&it))) \ | ||
| pcb = dictGetEntryVal(de); \ | ||
| if (pcb) __redisRunCallback(ac,pcb,NULL); \ |
Collaborator
There was a problem hiding this comment.
Need a block here.
Suggested change
| while (NULL != (de = dictNext(&it))) \ | |
| pcb = dictGetEntryVal(de); \ | |
| if (pcb) __redisRunCallback(ac,pcb,NULL); \ | |
| while (NULL != (de = dictNext(&it))) { \ | |
| pcb = dictGetEntryVal(de); \ | |
| if (pcb) __redisRunCallback(ac,pcb,NULL); \ | |
| } \ |
oshamash
force-pushed
the
omer/async-append-take2
branch
from
October 3, 2021 08:18
088c9ce to
b393973
Compare
+ hiredis.c: Convert redisSetError to take format and va_args
+ dict.* : Fixed generic hash function -> cannot really take signed number
+ async.* : Valdup function now handles OOM properly
KeyCompare function uses proper sized integers
nextArgument - change to use proper str-int conversion function
Added redisAsyncAppend* function family to support buffer
optimizations in async-mode
Added proper error handling on OOM errors [inc buffer rollback]
Review fixes
+ hiredis.c : Reverted back to memcpy(), will test *printf in different time
+ aysnc.c : Minor changes for better readability
Handle unlikely/pathological OOM conditon cleanly.
More OOM checks
oshamash
force-pushed
the
omer/async-append-take2
branch
from
October 3, 2021 08:19
b393973 to
44f434c
Compare
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
KeyCompare function uses proper sized integers
nextArgument - change to use proper str-int conversion function
Added redisAsyncAppend* function family to support buffer
optimizations in async-mode
Added proper error handling on OOM errors [inc buffer rollback]
Review fixes
Handle unlikely/pathological OOM conditon cleanly.
More OOM checks