Comment 8 for bug 1217002

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote : Re: RENAME/DROP crashes 5.5.30+ with innodb_track_changed_pages

Hartmut -

Both recv_parse_or_apply_log_rec_body() callers need to execute MLOG_FILE_RENAME, actually the recv_parse_log_rec() even more so, as it is called during the initial log parsing, which must, among the other things, set up the data dictionary etc. so that the right pages are read and recovered later. Later is when the other caller recv_recover_page_func() is called, with records gathered for that page. MLOG_FILE_RENAME should be absent among them.

The easiest fix is to adjust recv_parse_or_apply_log_rec_body() to pass "recv_recovery_is_on() ? space_id : 0" instead of space_id to the fil_op_log_parse_or_replay() call.