Memory of proxy thread is initialized to 0 #13
Merged
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.
Proxy will coredump when
CLUSTER_ADDRESSis not a redis cluster node.There is stack trace.
As the code shows, https://github.com/artix75/redis-cluster-proxy/blob/unstable/src/proxy.c#L1730. Some fields of thread are dirty because they are not initialized to 0. But there are some places to call
freeProxyThreadwhen occur errors, such as, the instance has cluster support disabled. Core will be generated when to release unaccessed memory. I consider the easiest way is to initialize the memory, so that we don't need to handle multiple situations carefully.It will
exit(1)without segmentation fault even if the instance has cluster support disabled.