To reason about logging different table types, we make some preliminary definitions.
(D-T-table) A table that has a transactional engine is called a T-table.
(D-N-table) A table that has a nontransactional engine is called an N-table.
(D-N-write) A statement makes an N-write if it makes any type of change to the server state that will not be changed by a ROLLBACK.
Note: N-writes include updates to N-tables, but also CREATE and DROP statements.
(D-log-target) Events are either appended to the Transaction Cache (TC) or to the Statement Cache (SC) or written directly to the binlog.