hazelcast / hazelcast/hazelcast-python-client

[TRACKING ISSUE] Check for the minimum size of the bytes read only once per frame

Abierto
#554 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
116
Forks
78
Merge medio
10 d 22 h
PR fusionados (30 d)
1

Descripción

The tracking issue for the Java side PR.

See https://github.com/hazelcast/hazelcast/pull/21502 for details.

---

Before this fix, while reading a message frame, we were mistakenly
checking that the bytes we haven't read yet are less than 6 bytes
each time the `ClientMessageReader#readFrame` is called.

This is problematic for frames that are read in multiple calls,
as the size of the last piece of the frame we are reading might be
actually less than 6 bytes and that is definitely valid. However,
in that case, we were not able to read the remaining part and
continue.

This PR aims to fix this problem by having that check only at the
beginning for each frame, only once per frame. Once we read the frame
length and flags, we will be able to read any number of bytes no
matter how small it is.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza en ClientMessageReader#readFrame y revisa el Java PR enlazado para conocer el comportamiento previsto. Confirma que la comprobación del tamaño mínimo se realiza una vez al principio de cada frame y que un frame dividido entre varias lecturas, incluida una parte final de menos de 6 bytes, puede leerse correctamente.

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

Evaluación

Stack tecnológico
java, python
Área
distributed-systems
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.