CreateTable reports a global secondary index name outside the pattern at 'indexName', where DynamoDB names the member
维护者通常 4 天内回复
还没有人认领这个 Issue。
评估
调研方向
从 crates/core/src/validation/mod.rs 中的 validate_index_name 开始,并将其位置处理方式与 #830 中 crates/engine/src/update_table.rs 的 validate_update_index_name 进行比较。更改本地二级索引和长度子句之前,先测量它们的位置,因为 issue 指出这些位置尚未测量。完成标准是:无效的 CreateTable GSI 名称报告从 1 开始计数的 globalSecondaryIndexes.<n>.member.indexName 路径,并且相关行为经过检查。
由索引模型根据 Issue 内容生成。
描述
What ExtendDB does
validate_index_name in crates/core/src/validation/mod.rs writes the location as indexName for every index name it refuses. For a global secondary index of CreateTable the location DynamoDB gives is the member path.
Measured on 2026-11-06 at the head of #830 (ccdae81c2), SQLite and PostgreSQL:
| Request | ExtendDB |
|---|---|
CreateTable with one GSI named g i |
1 validation error detected: Value 'g i' at 'indexName' failed to satisfy constraint: Member must satisfy regular expression pattern: [a-zA-Z0-9_.-]+ |
CreateTable with GSIs gok and g<U+0000>i |
the same sentence with Value 'g<U+0000>i' at 'indexName' |
What DynamoDB does
Measured in us-east-1 on 2026-11-06, with SDK parameter validation off. The index position is 1-based:
| Request | DynamoDB |
|---|---|
one GSI named g i |
1 validation error detected: Value 'g i' at 'globalSecondaryIndexes.1.member.indexName' failed to satisfy constraint: Member must satisfy regular expression pattern: [a-zA-Z0-9_.-]+ |
GSIs gok and g<U+0000>i |
... Value 'g<U+0000>i' at 'globalSecondaryIndexes.2.member.indexName' ... |
Suggested fix
Report a CreateTable GSI name fault at globalSecondaryIndexes.<n>.member.indexName. #830 does the same for UpdateTable (validate_update_index_name in crates/engine/src/update_table.rs, globalSecondaryIndexUpdates.<n>.member.create.indexName). The location for a local secondary index name and for the length clause is unmeasured. Measure it before changing it.
Related: #367, #830.
- 主要语言
- Rust
- 星标
- 517
- 派生
- 60
- 平均合并
- 5 天 3 小时
- 30 天内合并 PR
- 79
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ExtendDB/extenddb 的其他 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 4 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 4 天内回复
-
tests: two race tests share one boto3 client across threads and failed with TLSV1_ALERT_DECODE_ERROR未关闭ci:stability
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 4 天内回复
-
documentation
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 4 天内回复
-
storage-sqlite: a restore slot test checks the slot before the copy frees it可能已有人在做 @Dodothereal 于 1 天前认领。 未关闭ci:stability sqlite
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 4 天内回复
查看 ExtendDB/extenddb 的全部 Issue
相似的 Issue
-
agent-self
难度 1/5 1 小时以内 新手友好度 88/100
yologdev/yoyo-evolve#1154 ·
-
难度 1/5 1 小时以内 新手友好度 85/100
eliasstravik/herdr-projects#789 · 1 条评论 ·
-
bug
难度 2/5 1-3 小时 新手友好度 64/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 82/100
Alex-Sebastian-Ene/mind-over-chicken#195 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 2 天内回复