mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
IB: 0.2 part IV
* BEGIN_TS(), COMMIT_TS() SQL functions; * VTQ instead of packed stores secs + usecs like my_timestamp_to_binary() does; * versioned SELECT to IB is translated with COMMIT_TS(); * SQL fixes: - FOR_SYSTEM_TIME_UNSPECIFIED condition compares to TIMESTAMP_MAX_VALUE; - segfault fix #36: multiple execute of prepared stmt; - different tables to same stored procedure fix (#39) * Fixes of previous parts: ON DUPLICATE KEY, other misc fixes.
This commit is contained in:
@ -940,6 +940,11 @@ public:
|
||||
|
||||
enum_state state;
|
||||
|
||||
protected:
|
||||
friend class sp_head;
|
||||
bool is_stored_procedure;
|
||||
|
||||
public:
|
||||
/* We build without RTTI, so dynamic_cast can't be used. */
|
||||
enum Type
|
||||
{
|
||||
@ -947,7 +952,8 @@ public:
|
||||
};
|
||||
|
||||
Query_arena(MEM_ROOT *mem_root_arg, enum enum_state state_arg) :
|
||||
free_list(0), mem_root(mem_root_arg), state(state_arg)
|
||||
free_list(0), mem_root(mem_root_arg), state(state_arg),
|
||||
is_stored_procedure(state_arg == STMT_INITIALIZED_FOR_SP ? true : false)
|
||||
{ INIT_ARENA_DBUG_INFO; }
|
||||
/*
|
||||
This constructor is used only when Query_arena is created as
|
||||
@ -967,6 +973,8 @@ public:
|
||||
{ return state == STMT_PREPARED || state == STMT_EXECUTED; }
|
||||
inline bool is_conventional() const
|
||||
{ return state == STMT_CONVENTIONAL_EXECUTION; }
|
||||
inline bool is_sp_execute() const
|
||||
{ return is_stored_procedure; }
|
||||
|
||||
inline void* alloc(size_t size) { return alloc_root(mem_root,size); }
|
||||
inline void* calloc(size_t size)
|
||||
@ -6021,5 +6029,4 @@ public:
|
||||
|
||||
|
||||
#endif /* MYSQL_SERVER */
|
||||
|
||||
#endif /* SQL_CLASS_INCLUDED */
|
||||
|
Reference in New Issue
Block a user