SSCAN, HSCAN, ZSCAN don't finish when an empty-string member is returned at the end of a page
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 77/100
Línea de trabajo
Start at the SSCAN, HSCAN, and ZSCAN implementations and their cursor pagination tests; reproduce the issue with the provided SADD and repeated SSCAN commands using COUNT 1. Trace how an empty member is handled at the end of a page and how the cursor advances. Done when all three commands finish scanning and return the empty-string member without repeating the same page.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Search before asking
- I had searched in the issues and found no similar issues.
Version
Kvrocks unstable at commit baa1da67b3
Minimal reproduce step
SADD s "" 10
SSCAN s 0 COUNT 1
SSCAN s <cursor from the previous reply> COUNT 1
... repeat with each returned cursor
What did you expect to see?
> SSCAN s 0 COUNT 1
1) "0"
2) 1) ""
2) "10"
What did you see instead?
> SSCAN s 0 COUNT 1
1) "8038996045349715968"
2) 1) ""
> SSCAN s 8038996045349715968 COUNT 1
1) "8038996045349715969"
2) 1) ""
> SSCAN s 8038996045349715969 COUNT 1
1) "8038996045349715970"
2) 1) ""
(the same page forever)
Anything Else?
No response
Are you willing to submit a PR?
- I'm willing to submit a PR!
- Lenguaje dominante
- C++
- Estrellas
- 4.5k
- Forks
- 689
- Merge medio
- 1 d 22 h
- PR fusionados (30 d)
- 37
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/kvrocks
-
HSETEXPIRE with an overflowing TTL returns OK and deletes the whole hashPosiblemente ocupada @anubhavgupta121 la tomó hace 20 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día
-
`JSON.STRAPPEND` with non JSON value crashes the serverPosiblemente ocupada @ggyuchive la tomó hoy. Abiertobug
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
-
A blocked client that is woken but loses the element to another client is never woken againPosiblemente ocupada @ggyuchive la tomó hace 1 día. Abiertobug
Dificultad 4/5 1-2 días Aptitud para principiantes 55/100
Los mantenedores suelen responder en 1 día
-
`GEOSEARCH` / `GEORADIUS` with a negative radius hangsPosiblemente ocupada @ggyuchive la tomó hace 9 días. Abiertobug
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
Los mantenedores suelen responder en 1 día
-
`ZDIFFSTORE` and `ZINTERSTORE` with numkeys 0 crash the server (SIGSEGV)Posiblemente ocupada @Anurag-S1ngh la tomó hace 8 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
Todos los issues de apache/kvrocks
Issues similares
-
Docs: CREATE GRAPH page says `USE my_graph`, but the working statement is `USE GRAPH my_graph`Abierto
Dificultad 1/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
godotengine/godot#125272 ·
Los mantenedores suelen responder en 1 día
-
bug impact: performance priority: med review: 2026-11 severity: med
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
mgradwohl/ModernLife#67 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
games-on-whales/wolf#569 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
cloudflare/workerd#8290 ·
Los mantenedores suelen responder en 1 día