在 Query.Bind 期间上下文取消时返回 ErrNoRows
作者: luiscleto创建于 2025年3月10日更新于 2025年4月4日
标签bughelp wanted
在 v4.13.0 版本中,我们注意到在处理上下文超时时,有时会出现意外的 `sql.ErrNoRows`,而不是预期的上下文错误,这破坏了我们的一些错误处理逻辑。我认为这在尝试找到特定行(`bkind == kindStruct`)时上下文超时时会发生,而`rows.Next()` 方法正在被调用之前。在这种情况下,`rows.Next()` 方法会返回 false,而`bind` 方法会返回 `sql.ErrNoRows`。这导致 `Query.Bind` 方法在不检查 `rows.Err()` 的情况下立即返回错误。
内容来源: aarondl/sqlboiler