oceanbase/seekdb

[Enhancement]: [embed] return meaningful error message to user

Open

#8 创建于 2025年11月7日

在 GitHub 查看
 (1 评论) (0 反应) (0 负责人)C++ (242 fork)github user discovery
help wantedmodule: embedtype: enhancementvibe coding: hard

仓库指标

Star
 (2,613 star)
PR 合并指标
 (平均合并 3天 3小时) (30 天内合并 47 个 PR)

描述

Enhancement The error messages returned to user is not clear enough, for example:

>>> seekdb.open()
>>> seekdb.open()
[seekdb] seekdb has opened
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
RuntimeError: open seekdb failed 4005 The object is initialized twice

Maybe we can transfer internal error information to mysql error message. There're some help functions to convert oceanbase error message to user message:

// in file src/share/ob_errno.h
int ob_mysql_errno(const int oberr);
  int ob_mysql_errno_with_check(const int oberr);
  const char *ob_sqlstate(const int oberr);
  const char *ob_strerror(const int oberr);
  const char *ob_str_user_error(const int oberr);

贡献者指南