diff options
author | Monty <monty@mariadb.org> | 2017-07-03 11:35:44 +0300 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-08-24 01:05:50 +0200 |
commit | 536215e32fc43aa423684e9807640dcf3453924b (patch) | |
tree | d7249d3c4268c9a57becc5fea554e2379ffe1cf1 /libmysqld | |
parent | 52a1e4d613a6c7de759e93da8dfbd8cac08a11ee (diff) | |
download | mariadb-git-536215e32fc43aa423684e9807640dcf3453924b.tar.gz |
Added DBUG_ASSERT_AS_PRINTF compile flag
If compiling a non DBUG binary with
-DDBUG_ASSERT_AS_PRINTF asserts will be
changed to printf + stack trace (of stack
trace are enabled).
- Changed #ifndef DBUG_OFF to
#ifdef DBUG_ASSERT_EXISTS
for those DBUG_OFF that was just used to enable
assert
- Assert checking that could greatly impact
performance where changed to DBUG_ASSERT_SLOW which
is not affected by DBUG_ASSERT_AS_PRINTF
- Added one extra option to my_print_stacktrace() to
get more silent in case of stack trace printing as
part of assert.
Diffstat (limited to 'libmysqld')
-rw-r--r-- | libmysqld/emb_qcache.cc | 10 | ||||
-rw-r--r-- | libmysqld/emb_qcache.h | 4 | ||||
-rw-r--r-- | libmysqld/libmysql.c | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/libmysqld/emb_qcache.cc b/libmysqld/emb_qcache.cc index 78620f5d940..74a6337912a 100644 --- a/libmysqld/emb_qcache.cc +++ b/libmysqld/emb_qcache.cc @@ -28,14 +28,14 @@ void Querycache_stream::store_uchar(uchar c) if (data_end == cur_data) use_next_block(TRUE); *(cur_data++)= c; -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS stored_size++; #endif } void Querycache_stream::store_short(ushort s) { -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS stored_size+= 2; #endif if (data_end - cur_data > 1) @@ -58,7 +58,7 @@ void Querycache_stream::store_short(ushort s) void Querycache_stream::store_int(uint i) { -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS stored_size+= 4; #endif size_t rest_len= data_end - cur_data; @@ -85,7 +85,7 @@ void Querycache_stream::store_int(uint i) void Querycache_stream::store_ll(ulonglong ll) { -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS stored_size+= 8; #endif size_t rest_len= data_end - cur_data; @@ -110,7 +110,7 @@ void Querycache_stream::store_ll(ulonglong ll) void Querycache_stream::store_str_only(const char *str, uint str_len) { -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS stored_size+= str_len; #endif do diff --git a/libmysqld/emb_qcache.h b/libmysqld/emb_qcache.h index 8fd166df88d..d714450feb8 100644 --- a/libmysqld/emb_qcache.h +++ b/libmysqld/emb_qcache.h @@ -22,7 +22,7 @@ class Querycache_stream Query_cache_block *block; uint headers_len; public: -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS Query_cache_block *first_block; uint stored_size; #endif @@ -31,7 +31,7 @@ public: { cur_data= ((uchar*)block)+headers_len; data_end= cur_data + (block->used-headers_len); -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS first_block= ini_block; stored_size= 0; #endif diff --git a/libmysqld/libmysql.c b/libmysqld/libmysql.c index d1176a4168c..58900b87147 100644 --- a/libmysqld/libmysql.c +++ b/libmysqld/libmysql.c @@ -4375,7 +4375,7 @@ static void stmt_update_metadata(MYSQL_STMT *stmt, MYSQL_ROWS *data) MYSQL_FIELD *field; uchar *null_ptr, bit; uchar *row= (uchar*) data->data; -#ifndef DBUG_OFF +#ifdef DBUG_ASSERT_EXISTS uchar *row_end= row + data->length; #endif |