Request for Fair State Transition Scheduling Across Multiple Resources
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- java
- Área
- distributed-systems
Línea de trabajo
Empieza trazando cómo se programan los mensajes de transición de estado en el modo CUSTOMIZED y reproduce el escenario de inanición de TableA/TableB con un lote grande de cambios de IdealState. El trabajo estará terminado cuando exista un enfoque de programación decidido y demostrado que permita a ambos recursos avanzar de forma justa sin requerir WAGED.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem? Please describe.
We use CUSTOMIZED mode and today there does not seem to be any fairness in terms of how the Helix state transition messages are sent out to the cluster across different resources.
For example, say I have two resources, TableA and TableB that share the same instances. If I update TableA with a very large number of IdealState changes (say 10K), then updates to TableB land up getting queued behind TableA and no progress is made until TableA's state transitions complete.
This leads to starvation for TableB. Ideally resources should not affect each other in a Helix cluster.
Describe the solution you'd like
Ideally the Helix state transitions should be scheduled fairly across resources in a cluster to prevent the above starvation scenario.
Additional context
I know WAGED solves some of these problems, but moving to WAGED is not an option for us. Are ther any other solutions that can be leveraged?
cc @junkaixue @zpinto
- 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