Commit 1eaacaf1 authored by mronstrom@mysql.com's avatar mronstrom@mysql.com

Bug #10901

After review fix
Copy from internal state to share state only when in lock write
mode (happens only when lock table x write has been performed since
update_state_info is only called when holding a TL_READ_NO_INSERT
lock normally. Previous patch would have failed in combination with
delayed writes.
parent 96252c1d
...@@ -3626,8 +3626,10 @@ int update_state_info(MI_CHECK *param, MI_INFO *info,uint update) ...@@ -3626,8 +3626,10 @@ int update_state_info(MI_CHECK *param, MI_INFO *info,uint update)
/* /*
When tables are locked we haven't synched the share state and the When tables are locked we haven't synched the share state and the
real state for a while so we better do it here before synching real state for a while so we better do it here before synching
the share state to disk. the share state to disk. Only when table is write locked is it
necessary to perform this synch.
*/ */
if (info->lock_type == F_WRLCK)
share->state.state= *info->state; share->state.state= *info->state;
if (mi_state_info_write(share->kfile,&share->state,1+2)) if (mi_state_info_write(share->kfile,&share->state,1+2))
goto err; goto err;
......
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