Repository navigation
修复 Add/Search 短暂缺表失败,增加默认 5 秒的可配置恢复窗口 - #23
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
并发创建用户库时,Memoria 已完成建表,后续另一条数据库连接仍可能短暂返回缺表错误。mb 目前会立即结束 Add/Search;即使写入已提交,也可能把后续读取失败返回给客户端。
本次在 mb 的 HTTP 边界增加针对已识别缺表错误的有限恢复:
mem_*缺表错误:1064/42000 的指定 parser 消息,或 1146/42S02 的no such table消息。普通 500、语法错误、认证/参数错误、限流和传输异常不进入此重试。MEMORIA_CATALOG_RETRY_TIMEOUT_SECONDS默认 5 秒,支持 0~120 秒的有限数值,0关闭;Helm 对应catalogRetryTimeoutSeconds。窗口沿用现有同步 I/O 的协作式超时语义:在途操作允许退出,迟于恢复窗口返回的成功不会被接受;不声称能在任意 socket 阶段强制硬取消。永久缺表仍会在窗口耗尽后失败,此改动不替代数据库一致性配置核查。
验证:
0、2.5、5的渲染环境值。