Walking through the fil_io functions, the only function that reads directly from the datafiles without going through the normal process is fil_write_lsn_and_arch_no_to_file, I verified this is only called on startup in my failure scenario.
Another function I looked at is buf_flush_write_block_low which calls:
if (!srv_use_doublewrite_buf || !trx_doublewrite) { fprintf(stderr,"fil_io write without dblewrite \n");
Walking through the fil_io functions, the only function that reads directly from the datafiles without going through the normal process is fil_write_ lsn_and_ arch_no_ to_file, I verified this is only called on startup in my failure scenario.
Another function I looked at is buf_flush_ write_block_ low which calls:
if (!srv_use_ doublewrite_ buf || !trx_doublewrite) {
fprintf( stderr, "fil_io write without dblewrite \n");
} else {
}
}
This was called during startup, but not later on... so I think i can rule this out.