hazelcast / hazelcast/hazelcast-python-client
[TRACKING ISSUE] Check for the minimum size of the bytes read only once per frame
- 主要言語
- Python
- スター
- 116
- フォーク
- 78
- 平均マージ
- 10日 22時間
- マージ済み PR(30日)
- 1
説明
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.
コントリビューションガイド
調査の方向性
ClientMessageReader#readFrame から始め、意図された動作についてリンク先の Java PR を確認してください。最小サイズのチェックが各フレームの開始時に一度だけ行われ、最後の部分が 6 バイト未満である場合を含め、複数回の読み取りに分割されたフレームを正常に読み取れることを確認してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java, python
- 領域
- distributed-systems
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100