fix create index on column default sequence bug

This commit is contained in:
sdc
2023-05-24 08:11:08 +00:00
committed by ob-robot
parent 88bc569d56
commit 190d91109a

View File

@ -1649,8 +1649,19 @@ int ObRawExprUtils::build_seq_nextval_expr(ObRawExpr *&expr,
uint64_t seq_id, uint64_t seq_id,
ObDMLStmt *stmt) ObDMLStmt *stmt)
{ {
return build_seq_nextval_expr(expr, session_info, expr_factory, q_name.database_name_, int ret = OB_SUCCESS;
q_name.tbl_name_, q_name.col_name_, seq_id, stmt); if (OB_ISNULL(session_info)) {
ret = OB_ERR_UNEXPECTED;
LOG_WARN("session info is NULL", K(ret));
} else {
const ObString &database_name = q_name.database_name_.empty() ?
session_info->get_database_name() : q_name.database_name_;
if (OB_FAIL(build_seq_nextval_expr(expr, session_info, expr_factory, database_name,
q_name.tbl_name_, q_name.col_name_, seq_id, stmt))) {
LOG_WARN("build seq nextval expr failed", K(ret));
}
}
return ret;
} }
// build oracle sequence_object.currval, sequence_object.nextval expr // build oracle sequence_object.currval, sequence_object.nextval expr
@ -1669,7 +1680,7 @@ int ObRawExprUtils::build_seq_nextval_expr(ObRawExpr *&expr,
ObConstRawExpr *col_id_expr = NULL; ObConstRawExpr *col_id_expr = NULL;
if (OB_ISNULL(session_info) || OB_ISNULL(expr_factory)) { if (OB_ISNULL(session_info) || OB_ISNULL(expr_factory)) {
ret = OB_ERR_UNEXPECTED; ret = OB_ERR_UNEXPECTED;
LOG_WARN("session info is NULL", K(session_info), K(expr_factory)); LOG_WARN("session info is NULL", K(ret), K(session_info), K(expr_factory));
} else if (NULL != stmt && OB_FAIL(stmt->get_sequence_expr(exists_seq_expr, } else if (NULL != stmt && OB_FAIL(stmt->get_sequence_expr(exists_seq_expr,
tbl_name, tbl_name,
col_name, col_name,