Details
-
Bug
-
Status: Confirmed (View Workflow)
-
Major
-
Resolution: Unresolved
-
11.4
-
None
Description
The change in MDEV-26674 sets innodb_use_native_aio=OFF for any system running kernel < 5.15.3 due to hangs related to liburing. Since RHEL9 is likely to use kernel 5.14 for quite some time (it goes EoL in 2028), the fix in MDEV-26674 will likely affect quite a lot of people, particularly enterprises. Users of Rocky and Alma Linux will also be affected.
Could MariaDB be compiled with libaio and allow the use of libaio for kernel 5.14 instead of setting innodb_use_native_aio=OFF which impacts performance?
There's also the possibility that Red Hat will (perhaps already?) backport the fix to 5.14. If that's the case a more rigorous check for kernel version/platform would be needed in ha_innodb.cc.
Attachments
Issue Links
- is caused by
-
MDEV-26674 io_uring related hangs on the Linux kernel
-
- Closed
-
- relates to
-
MDEV-35886 MariaDB Server frequently hanging, causing data corruption.
-
- Closed
-
-
MDEV-36234 mysqld: io_uring_queue_init() failed with errno 1
-
- Open
-
> Could MariaDB be compiled with libaio and allow the use of libaio for kernel 5.14 instead of setting innodb_use_native_aio=OFF which impacts performance?
It gets a bit messy to affect build time compilation by the kernel version of what is being built.
Also a fun situation where running containers on a host kernel that isn't mapping to the container build. This was the reason behind runtime checks of version (despite their imperfection).
Another invasive solution, that I don't immediately advocate, is to link against uring and libaio at the same time.
> There's also the possibility that Red Hat will (perhaps already?) backport the fix to 5.14.
Based on Red Hat kernel processes I think its highly likely the RHEL image has this corrected.
> If that's the case a more rigorous check for kernel version/platform would be needed in ha_innodb.cc.
I'm open to this. If you've got a uname -v and a uname -r output from a RHEL9 kernel that would be most useful.
Or given how old the version checks where in
MDEV-26674, 2.5 years ago, just remove the version checks and let the responsible people who pay for kernel stability, or are responsible to update kernels to gain fixes, let them gain the use of the features that are fixed.Do you have a preference Ali.maria or marko?