I'm suspecting fallocate() on zfs.
To reproduce, one can follow these steps:
rm -rf /var/lib/mysql/*
mysqld --initialize
This will produce a zero-sized file:
# ll /var/lib/mysql/ib_logfile1
-rw-r----- 1 mysql mysql 0 Apr 18 17:37 /var/lib/mysql/ib_logfile1
Attempting to start mysql now will fail with this error:
2022-04-18T17:41:30.181861Z 1 [ERROR] [MY-012963] [InnoDB] Log file
./ib_logfile1 is of different size 0 bytes than other log files 17809408 bytes!
On a working system, that file is not zero-sized.
straceing mysqld --initialize shows:
2253 openat(AT_FDCWD, "./ib_logfile1", O_RDWR|O_CREAT|O_EXCL, 0640) = 3
2253 fcntl(3, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0,
l_len=0}) = 0
2253 fallocate(3, FALLOC_FL_ZERO_RANGE, 0, 50331648) = 0
2253 fsync(3) = 0
2253 close(3) = 0
There have been previous bugs with zfs and fallocate():
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1847105
https://github.com/openzfs/zfs/issues/326
I tried --innodb-extend-and-initialize and --skip-innodb-extend-and-
initialize, from https://dev.mysql.com/worklog/task/?id=13782, but both
ended up using fallocate().
A quick attempt with using the dir backend for lxd worked. Further
investigation needs to be done.
** Bug watch added: github.com/openzfs/zfs/issues #326
https://github.com/openzfs/zfs/issues/326
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1969247
Title:
mysql-server install crashes in LXD container on Jammy host
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mysql-8.0/+bug/1969247/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs