Commit 212313de authored by unknown's avatar unknown

Optimisation todo for loghandler added.

Debug output information fixed.
Fixed direct page referencing in write mode.


storage/maria/ma_loghandler.c:
  TODO added.
storage/maria/ma_pagecache.c:
  Debug output information fixed.
  Fixed direct page referencing in write mode.
parent 6c7a278c
...@@ -6066,10 +6066,10 @@ translog_size_t translog_read_record(LSN lsn, ...@@ -6066,10 +6066,10 @@ translog_size_t translog_read_record(LSN lsn,
/* /*
Force skipping to the next buffer @brief Force skipping to the next buffer
SYNOPSIS @todo Do not copy old page content if all page protections are switched off
translog_force_current_buffer_to_finish() (because we do not need calculate something or change old parts of the page)
*/ */
static void translog_force_current_buffer_to_finish() static void translog_force_current_buffer_to_finish()
......
...@@ -184,7 +184,6 @@ static const char *page_cache_page_type_str[]= ...@@ -184,7 +184,6 @@ static const char *page_cache_page_type_str[]=
static const char *page_cache_page_write_mode_str[]= static const char *page_cache_page_write_mode_str[]=
{ {
"DELAY", "DELAY",
"NOW",
"DONE" "DONE"
}; };
...@@ -2929,7 +2928,14 @@ uchar *pagecache_valid_read(PAGECACHE *pagecache, ...@@ -2929,7 +2928,14 @@ uchar *pagecache_valid_read(PAGECACHE *pagecache,
status= block->status; status= block->status;
if (!buff) if (!buff)
{
buff= block->buffer; buff= block->buffer;
/* if we lock for write we must link the block to changed blocks */
if ((lock == PAGECACHE_LOCK_WRITE ||
lock == PAGECACHE_LOCK_LEFT_WRITELOCKED) &&
!(block->status & PCBLOCK_CHANGED))
link_to_changed_list(pagecache, block);
}
else else
{ {
if (!(status & PCBLOCK_ERROR)) if (!(status & PCBLOCK_ERROR))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment