summaryrefslogtreecommitdiff
path: root/tpool/aio_liburing.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-06-14 09:15:20 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2021-06-14 12:38:56 +0300
commit6ba938af6219db3489aca7c8daa80a30009716bf (patch)
tree7327640f4d435fc31ec3ab656f9cc8a42691eaa0 /tpool/aio_liburing.cc
parent28e362eaca169ad49a2212a1ba6d5eca263e42c2 (diff)
downloadmariadb-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.cc10
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;