mirror of https://mirror.osredm.com/root/redis.git
Fix defrag CI for 32bit after merge of jemalloc 5.3
The new mallctl seems to set the output sz when EINVAL occors. that messes up the retry mechanism that does /2 on each iteration.
This commit is contained in:
parent
07d54dc5ba
commit
cded14f3e3
|
@ -329,7 +329,8 @@ void mallctl_int(client *c, robj **argv, int argc) {
|
||||||
}
|
}
|
||||||
size_t sz = sizeof(old);
|
size_t sz = sizeof(old);
|
||||||
while (sz > 0) {
|
while (sz > 0) {
|
||||||
if ((ret=je_mallctl(argv[0]->ptr, &old, &sz, argc > 1? &val: NULL, argc > 1?sz: 0))) {
|
size_t zz = sz;
|
||||||
|
if ((ret=je_mallctl(argv[0]->ptr, &old, &zz, argc > 1? &val: NULL, argc > 1?sz: 0))) {
|
||||||
if (ret == EPERM && argc > 1) {
|
if (ret == EPERM && argc > 1) {
|
||||||
/* if this option is write only, try just writing to it. */
|
/* if this option is write only, try just writing to it. */
|
||||||
if (!(ret=je_mallctl(argv[0]->ptr, NULL, 0, &val, sz))) {
|
if (!(ret=je_mallctl(argv[0]->ptr, NULL, 0, &val, sz))) {
|
||||||
|
|
Loading…
Reference in New Issue