Skip to content
Permalink
Browse files
MDEV-27593 InnoDB handle AIO errors - more detailed assertion
Step 1 in handling InnoDB AIO assertions better is to get
more detail of the cases of error.

This doesn't resolve MDEV-27593, but increases the level
of information in the assertion.
  • Loading branch information
grooverdan committed Jul 9, 2022
1 parent 781948a commit fc456bc
Showing 1 changed file with 9 additions and 1 deletion.
@@ -3584,9 +3584,17 @@ extern void fil_aio_callback(const IORequest &request);

static void io_callback(tpool::aiocb* cb)
{
ut_a(cb->m_err == DB_SUCCESS);
const IORequest request(*static_cast<const IORequest*>
(static_cast<const void*>(cb->m_userdata)));
if (cb->m_err != DB_SUCCESS)
{
ib::fatal() << "IO Error: " << cb->m_err << " during " <<
(request.is_async() ? "async " : "sync ") <<
(request.is_LRU() ? "lru " : "") <<
(cb->m_opcode == tpool::aio_opcode::AIO_PREAD ? "read" : "write") <<
" of " << cb->m_len << " bytes, for file " << cb->m_fh << ", returned " <<
cb->m_ret_len;
}
/* Return cb back to cache*/
if (cb->m_opcode == tpool::aio_opcode::AIO_PREAD)
{

0 comments on commit fc456bc

Please sign in to comment.