Messages in this thread | | | Date | Sun, 31 Jan 1999 00:25:29 +0100 | From | Michael Marxmeier <> | Subject | fsync on large files |
| |
Hi kernel freaks.
I would appreciate a suggestion how to aproach this problem:
A customer is reporting performance problems which might be related to fsync() on big files ...
Background: This is a database (consisting of a few big files) which each have a size 300-800 MB. They are synced regulary (currently each minute) using fsync() to ensure that old transaction log entries can be discarded safely.
Problem: The fsync() seems to takes rather long and other kernel activity seems to stall while the fsync() is processed (~3-5 seconds). If the fsync() is disabled, this effect is said to disappear. This is 2.0.3[56] on an UP box.
I remember it was mentioned in the past that ext2 fsync() has a problem with fsync on large files (there was a patch from Scott Laird <laird@pacificrim.net> which reverted to file_fsync() depending on file size).
Is this still valid (i would guess so since the 2.2.x code is basically the same), would it help to change to SMP (i'd guess not - first thing that 2.2.x does ist lock_kernel()) or is avoiding the ext2 fsync mechanism (as Scotts patch does) the best option?
Other options i can imagine: Use more (and smaller files) - the effects is said to become noticeable if file size extends 200 MB. Or is this effect unrelated and i should look elsewhere?
Any suggestions? Michael
-- Michael Marxmeier Marxmeier Software GmbH E-Mail: mike@msede.com Besenbruchstrasse 9 Voice : +49 202 2431440 42285 Wuppertal, Germany Fax : +49 202 2431420 http://www.msede.com/
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |