summaryrefslogtreecommitdiff
path: root/storage/maria/ma_pagecache.c
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2017-07-03 11:35:44 +0300
committerSergei Golubchik <serg@mariadb.org>2017-08-24 01:05:50 +0200
commit536215e32fc43aa423684e9807640dcf3453924b (patch)
treed7249d3c4268c9a57becc5fea554e2379ffe1cf1 /storage/maria/ma_pagecache.c
parent52a1e4d613a6c7de759e93da8dfbd8cac08a11ee (diff)
downloadmariadb-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 'storage/maria/ma_pagecache.c')
-rw-r--r--storage/maria/ma_pagecache.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/storage/maria/ma_pagecache.c b/storage/maria/ma_pagecache.c
index a1c407967b7..9449c730a04 100644
--- a/storage/maria/ma_pagecache.c
+++ b/storage/maria/ma_pagecache.c
@@ -2044,7 +2044,7 @@ restart:
DBUG_ASSERT(block->rlocks_queue == 0);
DBUG_ASSERT(block->pins == 0);
block->status= 0;
-#ifndef DBUG_OFF
+#ifdef DBUG_ASSERT_EXISTS
block->type= PAGECACHE_EMPTY_PAGE;
#endif
DBUG_ASSERT(reg_req);
@@ -2187,7 +2187,7 @@ restart:
block->last_hit_time= 0;
block->status= error ? PCBLOCK_ERROR : 0;
block->error= error ? (int16) my_errno : 0;
-#ifndef DBUG_OFF
+#ifdef DBUG_ASSERT_EXISTS
block->type= PAGECACHE_EMPTY_PAGE;
if (error)
my_debug_put_break_here();
@@ -4274,7 +4274,7 @@ static my_bool free_block(PAGECACHE *pagecache, PAGECACHE_BLOCK_LINK *block,
DBUG_ASSERT(block->requests >= 1);
DBUG_ASSERT(block->next_used == NULL);
block->status= 0;
-#ifndef DBUG_OFF
+#ifdef DBUG_ASSERT_EXISTS
block->type= PAGECACHE_EMPTY_PAGE;
#endif
block->rec_lsn= LSN_MAX;
@@ -4781,10 +4781,8 @@ restart:
wqueue_release_queue(&us_flusher.flush_queue);
}
-#ifndef DBUG_OFF
DBUG_EXECUTE("check_pagecache",
test_key_cache(pagecache, "end of flush_pagecache_blocks", 0););
-#endif
if (cache != cache_buff)
my_free(cache);
if (rc != 0)