diff options
author | mkindahl@dl145k.mysql.com <> | 2006-07-11 12:17:19 +0200 |
---|---|---|
committer | mkindahl@dl145k.mysql.com <> | 2006-07-11 12:17:19 +0200 |
commit | 9415b241395aca49afb44b8a34ca4daaa7aecb65 (patch) | |
tree | a7de1f862d3573e58eb4ee35c13d673028cafbf0 /sql/sp_head.h | |
parent | 512d1c7ff3513a1712997394cc5b75108e840fd3 (diff) | |
parent | 0581033b3b159e93b29e93a655708d4112ca7665 (diff) | |
download | mariadb-git-9415b241395aca49afb44b8a34ca4daaa7aecb65.tar.gz |
Merge dl145k.mysql.com:/data0/mkindahl/bkroot/mysql-5.1-new-rpl
into dl145k.mysql.com:/data0/mkindahl/bk/MERGE/mysql-5.1-merge
Diffstat (limited to 'sql/sp_head.h')
-rw-r--r-- | sql/sp_head.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/sql/sp_head.h b/sql/sp_head.h index 2fd38b7176c..4712647b6f4 100644 --- a/sql/sp_head.h +++ b/sql/sp_head.h @@ -117,7 +117,8 @@ public: /* Is set if a procedure with COMMIT (implicit or explicit) | ROLLBACK */ HAS_COMMIT_OR_ROLLBACK= 128, LOG_SLOW_STATEMENTS= 256, // Used by events - LOG_GENERAL_LOG= 512 // Used by events + LOG_GENERAL_LOG= 512, // Used by events + BINLOG_ROW_BASED_IF_MIXED= 1024 }; /* TYPE_ENUM_FUNCTION, TYPE_ENUM_PROCEDURE or TYPE_ENUM_TRIGGER */ @@ -342,6 +343,25 @@ public: int show_routine_code(THD *thd); #endif + /* + This method is intended for attributes of a routine which need + to propagate upwards to the LEX of the caller (when a property of a + sp_head needs to "taint" the caller). + */ + void propagate_attributes(LEX *lex) + { +#ifdef HAVE_ROW_BASED_REPLICATION + /* + If this routine needs row-based binary logging, the entire top statement + too (we cannot switch from statement-based to row-based only for this + routine, as in statement-based the top-statement may be binlogged and + the substatements not). + */ + if (m_flags & BINLOG_ROW_BASED_IF_MIXED) + lex->binlog_row_based_if_mixed= TRUE; +#endif + } + private: |