Preserve input instance order for zone_based stoppable check
@LZD-PratyushBhatt ya está trabajando en esto.
Desde el 30/4/2025.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- java
- Área
- distributed-systems
Línea de trabajo
Comienza siguiendo getZoneBasedInstances() a través de la comprobación stoppable de zone_based e identifica los puntos de entrada relevantes de la REST API. Confirma el comportamiento para preserveOrder=true y preserveOrder=false, incluida la compatibilidad con versiones anteriores, y después actualiza la documentación para describir las garantías de orden.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Currently, getZoneBasedInstances() which zone_based check calls internally uses a TreeSet, which leads to lexicographical sorting of instances during the stoppable check. This behavior results in the output instance order being different from the input list, even when multiple instances are equally stoppable.
This issue proposes to make the ordering deterministic based on user input, by introducing a new boolean parameter preserveOrder to facilitate preserving order for zone based checks and relevant REST API changes.
When preserveOrder is set to true, the original order of the input list will be preserved.
Default behavior (preserveOrder = false) will maintain backward compatibility for OSS users who may rely on the current output order.
This change aims to improve predictability in testing and usage scenarios where instance order matters. We'll ensure this behavior is clearly documented to avoid incorrect assumptions.
- Lenguaje dominante
- Java
- Estrellas
- 505
- Forks
- 258
- Merge medio
- 4 d 20 h
- PR fusionados (30 d)
- 3
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una 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/helix
-
Four TestConstraintBasedAlgorithm tests pass when nothing is thrownPosiblemente ocupada @sharanggupta la tomó hoy. Abierto
Dificultad 1/5 1-3 horas Aptitud para principiantes 85/100
-
Helix ZkClient times out after successful ZooKeeper SASL DIGEST-MD5 authenticationPosiblemente ocupada @adityaanikam la tomó hace 43 días. Abiertobug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
-
NPE in canCompleteSwap if path doesn't existsPosiblemente ocupada @waterWang la tomó hace 106 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 50/100
-
Legacy IZkStateListenerI0ItecImpl causes zombie participants by discarding session IDsPosiblemente ocupada @LZD-PratyushBhatt la tomó hace 457 días. Abiertobug
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de apache/helix
Issues similares
-
bug documentation good first issue help wanted priority low size XS
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
martin-francois/symphony-trello#1351 ·
Los mantenedores suelen responder en 1 día
-
Add test coverage for ConvertUtil.parseDate() with NULL inputPosiblemente ocupada @mirajul-mollah7 la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
eclipse-sw360/sw360#4792 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
aws/aws-emulator#30 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 4 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100