To not do network activity in `init` or global variables creation
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Refactorización
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- go
- Área
- networking
Línea de trabajo
Rastrea la inicialización global de defaultClient = New() a través de New, NewUserConfig, net.ResolveTCPAddr y net.DefaultResolver.Dial. Revisa el issue de Erigon enlazado y determina si la race reportada es reproducible. Se considera completado cuando la inicialización del paquete ya no realiza la actividad de red ni la mutación problemática, y el comportamiento se ha verificado en los sistemas afectados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
seems next global variable creation:
var defaultClient = New()
Does network activity:
NewUserConfig -> net.ResolveTCPAddr("tcp", fmt.Sprintf("[%s]:0", address))
and then mutating net.DefaultResolver.Dial
seems it's not thread-safe in golang (in OS's C libraries which used by golang).
And on some OS this race-condition caused crash: https://github.com/erigontech/erigon/issues/12570
We still collecting evidences: i may be a bit wrong
- Lenguaje dominante
- Go
- Estrellas
- 1
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Aún no hemos revisado los archivos de configuración de este proyecto. Empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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.
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
gruntwork-io/boilerplate#329 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
prime-radiant-inc/evener#3291 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Netcracker/qubership-apihub-backend#582 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día