[MDEV-28785] "Can't change size of file" errors from my_chsize() with random error numbers Created: 2022-06-09  Updated: 2022-10-24  Resolved: 2022-07-25

Status: Closed
Project: MariaDB Server
Component/s: None
Affects Version/s: 10.5.9
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Hartmut Holzgraefe Assignee: Hartmut Holzgraefe
Resolution: Incomplete Votes: 0
Labels: None


 Description   

Seeing error messages like

Can't change size of file (Errcode: 1690358208 "Unknown error 1690358208")
Can't change size of file (Errcode: 2004930784 "Unknown error 2004930784")

generated by

    my_error(EE_CANT_CHSIZE, MYF(ME_BELL), my_errno);

in mysys/my_chsize.c

Looking at the different code paths leading to this error output my_errno seems to always be set either directly in my_chsize() or in the my_seek() and my_write() functions being called by my_chsize().

The case may be related to having an ibdata1 configured with auto-extend, but also with a max. size, although I don't see how this such storage engine level configuration should interact with something as low level as my_chsize()

The problem was hit while trying to run "REORGANIZE PARTITION", with plenty of space on the datadir file system and no known other restrictions like file system quota limits.



 Comments   
Comment by Hartmut Holzgraefe [ 2022-06-17 ]

No, we don't have anything to reproduce this.

Comment by Hartmut Holzgraefe [ 2022-06-17 ]

... but the fact that we get very large values for the error number although these should be less than 200 for OS / libc error codes, and not beyond four digits even when adding MySQL/MariaDB error codes to the mix should allow for checking the different code paths to see where errno is not correctly passed through.

I tried this myself, but lack full understanding of how my_write() handles things, someone more familiar with the vio code should have a look at this ...

Comment by Sergei Golubchik [ 2022-06-20 ]

hholzgra, I looked at the code but also couldn't see how this large value is possible. I'm afraid that without a way to reproduce this we won't be able to do anything

Generated at Thu Feb 08 10:03:27 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.