mirror of
https://github.com/MariaDB/server.git
synced 2026-04-24 01:05:30 +02:00
Bug #10901
Analyze table corrupts the state on data_file_length, records, index_file_length... by writing the shared state when there is an updated internal state due to inserts or deletes Fixed by synching the shared state with the internal state before writing it to disk Added test cases of 2 error cases and a normal case in new analyze test case BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
This commit is contained in:
parent
0d4b118455
commit
f956ecd09a
4 changed files with 78 additions and 0 deletions
|
|
@ -3623,6 +3623,12 @@ int update_state_info(MI_CHECK *param, MI_INFO *info,uint update)
|
|||
if (!share->state.create_time)
|
||||
share->state.create_time=share->state.check_time;
|
||||
}
|
||||
/*
|
||||
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
|
||||
the share state to disk.
|
||||
*/
|
||||
share->state.state= *info->state;
|
||||
if (mi_state_info_write(share->kfile,&share->state,1+2))
|
||||
goto err;
|
||||
share->changed=0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue