diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2021-06-14 09:15:20 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2021-06-14 12:38:56 +0300 |
commit | 6ba938af6219db3489aca7c8daa80a30009716bf (patch) | |
tree | 7327640f4d435fc31ec3ab656f9cc8a42691eaa0 /tpool/aio_liburing.cc | |
parent | 28e362eaca169ad49a2212a1ba6d5eca263e42c2 (diff) | |
download | mariadb-git-6ba938af6219db3489aca7c8daa80a30009716bf.tar.gz |
MDEV-25905: Assertion table2==NULL in dict_sys_t::add()
In commit 49e2c8f0a6fefdeac50925f758090d6bd099768d (MDEV-25743)
we made dict_sys_t::find() incompatible with the rest of the
table name hash table operations in case the table name contains
non-ASCII octets (using a compatibility mode that facilitates the
upgrade into the MySQL 5.0 filename-safe encoding) and the target
platform implements signed char.
ut_fold_string(): Remove; replace with my_crc32c(). This also makes
table name hash value calculations independent on whether char
is unsigned or signed.
Diffstat (limited to 'tpool/aio_liburing.cc')
-rw-r--r-- | tpool/aio_liburing.cc | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/tpool/aio_liburing.cc b/tpool/aio_liburing.cc index 430c01c91a0..cca95bb6d37 100644 --- a/tpool/aio_liburing.cc +++ b/tpool/aio_liburing.cc @@ -162,12 +162,10 @@ private: io_uring_cqe_seen(&aio->uring_, cqe); - if (res == -EAGAIN) { - // If we need to resubmit the IO operation, but the ring is full, - // then just go the same path as for any other error codes. - if (!aio->submit_io(iocb)) - continue; - } + // If we need to resubmit the IO operation, but the ring is full, + // we will follow the same path as for any other error codes. + if (res == -EAGAIN && !aio->submit_io(iocb)) + continue; iocb->m_internal_task.m_func= iocb->m_callback; iocb->m_internal_task.m_arg= iocb; |