Browse Source
Bug #24793413 LOG PARSING BUFFER OVERFLOW
Bug #24793413 LOG PARSING BUFFER OVERFLOW
Problem: ======== During checkpoint, we are writing all MLOG_FILE_NAME records in one mtr and parse buffer can't be processed till MLOG_MULTI_REC_END. Eventually parse buffer exceeds the RECV_PARSING_BUF_SIZE and eventually it overflows. Fix: === 1) Break the large mtr if it exceeds LOG_CHECKPOINT_FREE_PER_THREAD into multiple mtr during checkpoint. 2) Move the parsing buffer if we are encountering only MLOG_FILE_NAME records. So that it will never exceed the RECV_PARSING_BUF_SIZE. Reviewed-by: Debarun Bannerjee <debarun.bannerjee@oracle.com> Reviewed-by: Rahul M Malik <rahul.m.malik@oracle.com> RB: 14743pull/367/head
committed by
Marko Mäkelä
6 changed files with 82 additions and 23 deletions
-
22storage/innobase/fil/fil0fil.cc
-
8storage/innobase/include/log0log.h
-
10storage/innobase/include/mtr0mtr.h
-
8storage/innobase/log/log0log.cc
-
30storage/innobase/log/log0recv.cc
-
27storage/innobase/mtr/mtr0mtr.cc
Write
Preview
Loading…
Cancel
Save
Reference in new issue