1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

Bug 8407, post review cleanup: use instr::get_cont_dest() to get the instruction

continuation instruction, for CONTINUE exception handlers.
This commit is contained in:
malff/marcsql@weblab.(none)
2007-03-07 09:53:46 -07:00
parent b89b192201
commit 1f91f47d5e
2 changed files with 19 additions and 28 deletions

View File

@ -449,13 +449,15 @@ public:
thd Thread handle
nextp OUT index of the next instruction to execute. (For most
instructions this will be the instruction following this
one).
RETURN
0 on success,
other if some error occured
one). Note that this parameter is undefined in case of
errors, use get_cont_dest() to find the continuation
instruction for CONTINUE error handlers.
RETURN
0 on success,
other if some error occurred
*/
virtual int execute(THD *thd, uint *nextp) = 0;
/**
@ -463,22 +465,17 @@ public:
Open and lock the tables used by this statement, as a pre-requisite
to execute the core logic of this instruction with
<code>exec_core()</code>.
If this statement fails, the next instruction to execute is also returned.
This is useful when a user defined SQL continue handler needs to be
executed.
@param thd the current thread
@param tables the list of tables to open and lock
@param nextp the continuation instruction, returned to the caller if this
method fails.
@return zero on success, non zero on failure.
*/
int exec_open_and_lock_tables(THD *thd, TABLE_LIST *tables, uint *nextp);
int exec_open_and_lock_tables(THD *thd, TABLE_LIST *tables);
/**
Get the continuation destination of this instruction.
@param nextp the continuation destination (output)
@return the continuation destination
*/
virtual void get_cont_dest(uint *nextp);
virtual uint get_cont_dest();
/*
Execute core function of instruction after all preparations (e.g.
@ -744,7 +741,7 @@ public:
virtual void set_destination(uint old_dest, uint new_dest)
= 0;
virtual void get_cont_dest(uint *nextp);
virtual uint get_cont_dest();
protected: