debing.sun

Results 30 issues of debing.sun

In the module, we will reuse the list iterator entry for RM_ListDelete, but `listTypeDelete` will only update `quicklistEntry->zi` but not `quicklistEntry->node`, which will result in `quicklistEntry->node` pointing to a freed...

Implement #11156 ## Description of the feature The new listpack encoding uses the old `list-max-listpack-size` config to perform the conversion, which we can think it of as a node inside...

Following #12568 Discussion in https://github.com/redis/redis/pull/12568#discussion_r1322320773 When a node needs to be compressed but is too small to be compressed, if this node becomes big enough to be compressed, it should...

Implement #10177 ### Issues 1. When we execute `module unload` command in multi first, and then execute the module command of this module, it will cause a crash (this module...

As the comments in the code indicate, when rax deletes a key, if the node is a compressed node, we should also try to compress it. ``` * Example of...

When we use XADD to insert multiple entries whose total size exceeds `stream_node_max_bytes`, the stream node will exceed the `stream_node_max_bytes` limit. But now we only preallocate stream node maximum `stream_node_max_bytes`,...

action:run-benchmark

`cjson.encode()` preallocate 6x memory in: https://github.com/redis/redis/blob/d27c7413a95a0a271b94376f3ec64dae06326b29/deps/lua/src/lua_cjson.c#L478 Before this PR, this test encodes a 3gb string which will consume almost 18gb memory. Now it will only consume almost 12gb of memory.

when the main thread and the module thread are in the same thread, sched_yield() can work well. when they are both bind to different cpus, sched_yield() will look for the...

fix some issues that come from sanitizer thread report. 1. when the main thread is updating daylight_active, other threads (bio, module thread) may be writing logs at the same time....