oceanbase/seekdb

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

Open

#8 aberto em 7 de nov. de 2025

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)C++ (242 forks)github user discovery
help wantedmodule: embedtype: enhancementvibe coding: hard

Métricas do repositório

Stars
 (2.613 stars)
Métricas de merge de PR
 (Mesclagem média 3d 3h) (47 fundiu PRs em 30d)

Description

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);

Guia do colaborador