O que o MySQL (InnoDB) faz quando armazena em cache uma tabela inteira na memória e uma ou mais linhas dessa tabela são alteradas?
O MySQL, neste caso, altera o cache na memória ou consideraria o cache sujo, despejaria os dados da tabela em cache e, em seguida, armazenaria novamente a tabela em cache na próxima vez que ela fosse consultada?
InnoDB é um mecanismo registrado em diário que permite transações. Cada gravação na tabela apoiada pelo InnoDB é uma única transação atômica. Quando a tabela em cache é gravada, todas as alterações são gravadas primeiro no diário, depois na cópia em cache (como é usada para leituras), depois no disco e, finalmente, as alterações são marcadas no diário como confirmadas. Isso garante a consistência das tabelas em cache.