CustomizedView - updates when node shutdown ungracefully

Abierto
#2,568 0 comentarios 0 reacciones 0 asignados Ver en GitHub

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
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
java

Línea de trabajo

Comienza rastreando la ruta de reincorporación del participante, el manejo de la eliminación de LIVEINSTANCE y la agregación de Customized View descritos en el issue. Determina cómo un participante puede volver a poblar su estado personalizado después de un cierre no ordenado y verifica que el estado obsoleto por instancia ya no se publique incorrectamente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug
Describe the bug

Helix Customized View has following behavior

  • participant maintains the customized-state per-instance under /INSTANCE/CUSTOMIZED_VIEW//resource
  • Participant is responsible updating the state.
  • Helix controller aggregate per-instance customized-state and publishes at cluster-level.

So per instance state under given cluster, path - /INSTANCE/CUSTOMIZEDSTATES/ is maintained purely by instance.

Instance can go gracefully down, in which case they can update the state before going down but in case instance shutdown due to ungraceful shutdown, CUSTOMIZEDSTATE becomes STALE.

From Helix controller side, it is difficult to make out when LIVEINSTANCE ephmeral node is deleted whether: host temporarily disconnected, host gracefully shutdown or host ungracefully went down. Controller can't decide and so it doens't know when aggregating.

If customizedstate maintained session, then also you can't make out as temporary disconnect vs/vs ungraceful will be hard to do it.

So we need to find out if there are any hooks when participant re-joins the cluster, it populates the value.

To Reproduce

Steps to reproduce the behavior.

Expected behavior

A clear and concise description of what you expected to happen.

Additional context

Add any other context about the problem here.

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

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/helix

Todos los issues de apache/helix

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.