patch 4.0
This commit is contained in:
@ -14,14 +14,16 @@
|
||||
#include "ob_savepoint_resolver.h"
|
||||
#include "ob_savepoint_stmt.h"
|
||||
|
||||
namespace oceanbase {
|
||||
namespace sql {
|
||||
namespace oceanbase
|
||||
{
|
||||
namespace sql
|
||||
{
|
||||
using namespace common;
|
||||
|
||||
int ObSavePointResolver::resolve(const ParseNode& parse_tree)
|
||||
int ObSavePointResolver::resolve(const ParseNode &parse_tree)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
ObSavePointStmt* stmt = NULL;
|
||||
ObSavePointStmt *stmt = NULL;
|
||||
if (OB_FAIL(create_savepoint_stmt(parse_tree.type_, stmt)) || OB_ISNULL(stmt)) {
|
||||
LOG_WARN("failed to create savepoint stmt", K(ret));
|
||||
} else if (OB_FAIL(stmt->set_sp_name(parse_tree.str_value_, parse_tree.str_len_))) {
|
||||
@ -32,25 +34,26 @@ int ObSavePointResolver::resolve(const ParseNode& parse_tree)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ObSavePointResolver::create_savepoint_stmt(ObItemType stmt_type, ObSavePointStmt*& stmt)
|
||||
int ObSavePointResolver::create_savepoint_stmt(ObItemType stmt_type, ObSavePointStmt *&stmt)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
switch (stmt_type) {
|
||||
case T_CREATE_SAVEPOINT:
|
||||
stmt = create_stmt<ObCreateSavePointStmt>();
|
||||
break;
|
||||
case T_ROLLBACK_SAVEPOINT:
|
||||
stmt = create_stmt<ObRollbackSavePointStmt>();
|
||||
break;
|
||||
case T_RELEASE_SAVEPOINT:
|
||||
stmt = create_stmt<ObReleaseSavePointStmt>();
|
||||
break;
|
||||
default:
|
||||
ret = OB_INVALID_ARGUMENT;
|
||||
LOG_WARN("invalid stmt type", K(ret), K(stmt_type));
|
||||
case T_CREATE_SAVEPOINT:
|
||||
stmt = create_stmt<ObCreateSavePointStmt>();
|
||||
break;
|
||||
case T_ROLLBACK_SAVEPOINT:
|
||||
stmt = create_stmt<ObRollbackSavePointStmt>();
|
||||
break;
|
||||
case T_RELEASE_SAVEPOINT:
|
||||
stmt = create_stmt<ObReleaseSavePointStmt>();
|
||||
break;
|
||||
default:
|
||||
ret = OB_INVALID_ARGUMENT;
|
||||
LOG_WARN("invalid stmt type", K(ret), K(stmt_type));
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
} // namespace sql
|
||||
} // namespace oceanbase
|
||||
} // namespace sql
|
||||
} // namespace oceanbase
|
||||
|
||||
|
||||
Reference in New Issue
Block a user