mirror of
https://github.com/redis/redis.git
synced 2026-04-15 14:30:06 -04:00
|
Some checks are pending
CI / test-ubuntu-latest (push) Waiting to run
CI / test-sanitizer-address (push) Waiting to run
CI / build-debian-old (push) Waiting to run
CI / build-macos-latest (push) Waiting to run
CI / build-32bit (push) Waiting to run
CI / build-libc-malloc (push) Waiting to run
CI / build-centos-jemalloc (push) Waiting to run
CI / build-old-chain-jemalloc (push) Waiting to run
Codecov / code-coverage (push) Waiting to run
External Server Tests / test-external-standalone (push) Waiting to run
External Server Tests / test-external-cluster (push) Waiting to run
External Server Tests / test-external-nodebug (push) Waiting to run
Spellcheck / Spellcheck (push) Waiting to run
`VSIM_RedisCommand` in `vset.c` had two memory leak bugs related to the compiled FILTER expression (`exprstate` allocated by `exprCompile`): 1. Duplicate FILTER: When two FILTER options are provided in a single VSIM command, the second `exprCompile` overwrites `filter_expr` without freeing the first. Only the last one is freed in `VSIM_execute cleanup`. Fix: call `exprFree` on the existing `filter_expr` before reassigning. 2. Error path leaks: When FILTER is parsed successfully but a later option fails validation (invalid COUNT/EF/EPSILON/FILTER-EF or unknown option), the error return frees `vec` but not `filter_expr`. Fix: add `exprFree(filter_expr)` to all five error return paths. |
||
|---|---|---|
| .. | ||
| basic_commands.py | ||
| basic_similarity.py | ||
| bin_vectorization.py | ||
| concurrent_vadd_cas_del_vsim.py | ||
| concurrent_vsim_and_del.py | ||
| debug_digest.py | ||
| deletion.py | ||
| dimension_validation.py | ||
| epsilon.py | ||
| evict_empty.py | ||
| filter_expr.py | ||
| filter_int.py | ||
| large_scale.py | ||
| memory_usage.py | ||
| node_update.py | ||
| persistence.py | ||
| q8_similarity.py | ||
| q8_vectorization.py | ||
| reduce.py | ||
| replication.py | ||
| threading_config.py | ||
| vadd_cas.py | ||
| vemb.py | ||
| vismember.py | ||
| vrand-ping-pong.py | ||
| vrandmember.py | ||
| vrange.py | ||
| vsim_duplicate_filter.py | ||
| vsim_filter_error_leak.py | ||
| vsim_limit_efsearch.py | ||
| with.py | ||