WARNING:root:posix_fadvise

Asked by Stefan Thorvardarson

Hi

I just noticed that the object-server and object-auditor are writing a lot of warnings about the posix_fadvise function on both my SAIO setup and a multi-node setup. This happens both on Ubuntu 10.04 and Debian Squeeze when using the 1.3 trunk version of swift. The error log contains a lot of lines like this:

Apr 4 14:56:04 blazer1 object-server STDOUT: WARNING:root:posix_fadvise(16, 0, 112, 4) -> 22 (txn: tx3cb4999f-3e3a-4b4c-9131-4aa414e5edc2)
Apr 4 15:00:32 blazer1 object-server STDOUT: WARNING:root:posix_fadvise(16, 0, 116, 4) -> 22 (txn: txea4c9a2c-78e6-464d-94df-2f74734e9ee2)
Apr 4 15:00:48 blazer1 object-server STDOUT: WARNING:root:posix_fadvise(13, 0, 116, 4) -> 22 (txn: txd9da848b-e3c6-4023-9bfe-afd4f204f582)
Apr 4 15:01:03 blazer1 object-server STDOUT: WARNING:root:posix_fadvise(16, 0, 207, 4) -> 22 (txn: txbde0e21d-443e-4d0a-ac6e-2365d8c452e0)
Apr 4 15:51:49 blazer1 object-auditor STDOUT: WARNING:root:posix_fadvise(15, 0, 1114112, 4) -> 22
Apr 4 15:51:49 blazer1 object-auditor STDOUT: WARNING:root:posix_fadvise(15, 1114112, 1114112, 4) -> 22
Apr 4 15:51:49 blazer1 object-auditor STDOUT: WARNING:root:posix_fadvise(15, 2228224, 1114112, 4) -> 22
Apr 4 15:51:49 blazer1 object-auditor STDOUT: WARNING:root:posix_fadvise(15, 3342336, 1114112, 4) -> 22
Apr 4 15:51:49 blazer1 object-auditor STDOUT: WARNING:root:posix_fadvise(15, 4456448, 1114112, 4) -> 22

I managed to trace the following system call in the object-server and it seems that the posix_fadvise funtion is not called correctly (the advice value should be 4 but in this case it is the huge value 0xa00000):
[pid 17125] fadvise64(7, 0, 0, 0xa00000 /* POSIX_FADV_??? */) = -1 EINVAL (Invalid argument)

This makes it hard to read the swift error logs, especially when the auditor is running. Is this a known problem?

Question information

Language:
English Edit question
Status:
Answered
For:
OpenStack Object Storage (swift) Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
gholt (gholt) said :
#1

I have not seen this one before and it's not happening on my systems. We could make the fadvise call optional, since it's just advising the system to not bother caching some i/o but that's really a performance tuning thing.

Is there anything special about your system? Just a straight install of the OS?

Revision history for this message
clayg (clay-gerrard) said :
#2

I've seen this before on 32-bit OS.

Revision history for this message
Stefan Thorvardarson (stefanth) said :
#3

The multi-node setup is using a 64 bit kernel but I think all the applications are 32 bit. The installation was a straight Debian install and it seems to have selected a 32 bit architecture instead of 64 bits. I will probably need to reinstall to fix that. The SAIO setup is 32 bits all the way. It would be good to make the fadvise call optional or change it so that it is correct on 32 bit systems.

Revision history for this message
Steve (lardcanoe) said :
#4

My logs are also being flooded with this log.

uname -a:
Linux storage-z1-001 2.6.32-28-generic-pae #55-Ubuntu SMP Mon Jan 10 22:34:08 UTC 2011 i686 GNU/Linux

I'm running with VMWare on top of a 64bit arch. So it could very well be a 32bit OS issue, since my kernel/image is apparently 32bit.

If the warning is useless, it would be better to just turn it off for none-devs.

Can you help with this problem?

Provide an answer of your own, or ask Stefan Thorvardarson for more information if necessary.

To post a message you must log in.