GetRecords: AT_SEQUENCE_NUMBER past a closed shard's ending number positions at the last record on the service
维护者通常 4 天内回复
还没有人认领这个 Issue。
评估
调研方向
Start by measuring the open-shard and between-records cases described in the issue, then inspect the AT_SEQUENCE_NUMBER iterator positioning path and tests for shard iterators. If the measurements confirm the stated rule, position the iterator at the greatest record sequence number not exceeding the request. Done means the new cases match the measured service behavior and the closed-shard case no longer returns a record past the shard end.
由索引模型根据 Issue 内容生成。
描述
Summary
On a closed shard holding one record with sequence number S (equal to its EndingSequenceNumber), GetShardIterator AT_SEQUENCE_NUMBER with a number greater than S (measured with S plus 1 and S plus 10^15, twice each) issues an iterator, and GetRecords on it returns that record. AFTER_SEQUENCE_NUMBER with S or greater returns no records. So the service positions an AT_SEQUENCE_NUMBER iterator at the last record at or before the requested number when the number is past the shard's end, rather than after it. ExtendDB returns no records for AT_SEQUENCE_NUMBER past the shard's last record.
Reachable only with a number the client did not obtain from the shard (every number a consumer holds is at or before the ending number), so low priority. Whether the same positioning applies on an open shard, and what the service does for a number between two records, was not measured.
Fix shape
Measure the open-shard and between-records cases first; then, if the rule is "at or before", position AT_SEQUENCE_NUMBER at the greatest record sequence number not exceeding the request. Relevant to #372, which ends the iterator at the ending number.
Found while reviewing #515.
- 主要语言
- Rust
- 星标
- 517
- 派生
- 60
- 平均合并
- 4 天 22 小时
- 30 天内合并 PR
- 40
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ExtendDB/extenddb 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 70/100
维护者通常 4 天内回复
-
Launch-prep: scope statement + backend tiers + version policy可能已有人在做 @navareamol 今天认领。 未关闭
难度 2/5 3-5 天 新手友好度 65/100
ExtendDB/extenddb#662 · 已指派 1 人 ·
维护者通常 4 天内回复
-
documentation
难度 2/5 1-3 小时 新手友好度 84/100
ExtendDB/extenddb#658 · 1 条评论 ·
维护者通常 4 天内回复
-
backend:postgresql bug
难度 2/5 1-3 小时 新手友好度 70/100
维护者通常 4 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 4 天内回复
查看 ExtendDB/extenddb 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 76/100
Y-ASLant/ElegantClipboard#178 ·
-
难度 2/5 1-3 小时 新手友好度 82/100
linxiv-dev/linXiv#384 · 1 条评论 ·
维护者通常 1 天内回复
-
bug drawings ui
难度 2/5 1-3 小时 新手友好度 82/100
userFRM/egui-charts#1595 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
smoltcp-rs/smoltcp#1235 ·
维护者通常 1 天内回复
-
scope:core type:security
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复