From 15a20367fbe0f0c726caba92d541ab7f04b830b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Sat, 23 Feb 2019 10:31:07 +0200 Subject: [PATCH] buf_page_get_zip(): Deduplicate some code --- storage/innobase/buf/buf0buf.cc | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/storage/innobase/buf/buf0buf.cc b/storage/innobase/buf/buf0buf.cc index e5ba697a77f..df607a6fc7a 100644 --- a/storage/innobase/buf/buf0buf.cc +++ b/storage/innobase/buf/buf0buf.cc @@ -3782,18 +3782,10 @@ err_exit: ut_ad(!buf_pool_watch_is_sentinel(buf_pool, bpage)); switch (buf_page_get_state(bpage)) { - case BUF_BLOCK_POOL_WATCH: - case BUF_BLOCK_NOT_USED: - case BUF_BLOCK_READY_FOR_USE: - case BUF_BLOCK_MEMORY: - case BUF_BLOCK_REMOVE_HASH: - ut_error; - case BUF_BLOCK_ZIP_PAGE: case BUF_BLOCK_ZIP_DIRTY: buf_block_fix(bpage); block_mutex = &buf_pool->zip_mutex; - mutex_enter(block_mutex); goto got_block; case BUF_BLOCK_FILE_PAGE: /* Discard the uncompressed page frame if possible. */ @@ -3808,16 +3800,16 @@ err_exit: __FILE__, __LINE__); block_mutex = &((buf_block_t*) bpage)->mutex; - - mutex_enter(block_mutex); - goto got_block; + default: + break; } ut_error; goto err_exit; got_block: + mutex_enter(block_mutex); must_read = buf_page_get_io_fix(bpage) == BUF_IO_READ; rw_lock_s_unlock(hash_lock);