On Thu, 12 Feb 2004, Steve Crawford wrote: > > > I'm running a reasonable sized (~30Gb) 7.3.4 database on Linux > > > and I'm getting some weird performance at times. > <snip> > > I am having a similar problem and this is what I've found so far: > > > > During the checkpoint the volume of data that's written isn't very > > high and it goes on for a fairly long time (up to 20 seconds) at a > > rate that appears to be well below our disk array's potential. The > > volume of data written is usually 1-5 MB/sec on an array that we've > > tested to sustain over 50 MB/sec (sequential writes, of course). > > > > It turns out that what's going on is that the command queue for the > > RAID array (3Ware RAID card) is filling up during the checkpoint > > and is staying at the max (254 commands) for most of the > > checkpoint. The odd lucky insert appears to work, but is extremely > > slow. In our case, the WAL files are on the same array as the data > > files, so everything grinds to a halt. > > I spoke with some 3Ware reps at a trade show and they recommended > adding the following to /etc/sysctl.conf: > vm.max-readahead = 256 > vm.min-readahead = 128 > > These settings take effect at boot. To change on a running system: > echo 256 > /proc/sys/vm/max-readahead > echo 128 > /proc/sys/vm/min-readahead
Note that if you edit /etc/sysctl.conf and want the changes to take effect, you can do so with: sysctl -p ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings