Received: from localhost (unknown [200.46.204.187]) by postgresql.org (Postfix) with ESMTP id D1B702E2D8F for ; Mon, 10 Dec 2007 10:06:36 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.187]) (amavisd-maia, port 10024) with ESMTP id 91284-05 for ; Mon, 10 Dec 2007 10:06:23 -0400 (AST) Received: from momjian.us (momjian.us [70.90.9.53]) by postgresql.org (Postfix) with ESMTP id B5FE92E0033 for ; Mon, 10 Dec 2007 10:06:28 -0400 (AST) Received: (from bruce@localhost) by momjian.us (8.11.6/8.11.6) id lBAE6QU19627; Mon, 10 Dec 2007 09:06:26 -0500 (EST) From: Bruce Momjian Message-Id: <200712101406.lBAE6QU19627@momjian.us> Subject: Re: [GENERAL] full_page_writes = off? In-Reply-To: To: Greg Smith Date: Mon, 10 Dec 2007 09:06:26 -0500 (EST) CC: PostgreSQL-documentation X-Mailer: ELM [version 2.4ME+ PL124 (25)] MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="ELM1197295586-25695-0_" Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200712/40 X-Sequence-Number: 4708 --ELM1197295586-25695-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" I thought we had the disk write cache control documented for popular operating systems, but I see we don't so I added the following patch to our documentation. --------------------------------------------------------------------------- Greg Smith wrote: > On Sat, 1 Dec 2007, Tomasz Ostrowski wrote: > > > You can also use "hdparm -I" to check this - look for a "Write > > caching" in "Commands/features" section. If it has a "*" in front > > then it is enabled and dangerous. > > Right; using -I works with most Linux hdparm versions: > > # hdparm -V > hdparm v6.6 > # hdparm -I /dev/hda | grep "Write cache" > * Write cache > # hdparm -W 0 /dev/hda > > /dev/hda: > setting drive write-caching to 0 (off) > # hdparm -I /dev/hda | grep "Write cache" > Write cache > > While being able to check the state with -W only works in very recent > ones. > > The best way to make this change permanent varies depending on your Linux > distribution. > > Also: nowadays many SATA disks appear as SCSI devices like /dev/sda. In > some cases I believe you can use a recent hdparm on them anyway, in others > I've had to use sdparm instead. Several of the examples at > http://sg.torque.net/sg/sdparm.html show how to manipulate the Write Cache > Enabled (WCE) status similarly to the above on SCSI devices. > > > I don't know how to check it on BSD. > > In FreeBSD I believe you use atacontrol to check the settings, and you can > make the changes permanent by fiddling with the /boot/device.hints file. > > -- > * Greg Smith gsmith@gregsmith.com http://www.gregsmith.com Baltimore, MD > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Have you searched our list archives? > > http://archives.postgresql.org/ -- Bruce Momjian http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + --ELM1197295586-25695-0_ Content-Transfer-Encoding: 7bit Content-Type: text/x-diff Content-Disposition: inline; filename="/rtmp/diff" Index: doc/src/sgml/wal.sgml =================================================================== RCS file: /cvsroot/pgsql/doc/src/sgml/wal.sgml,v retrieving revision 1.46 diff -c -c -r1.46 wal.sgml *** doc/src/sgml/wal.sgml 28 Nov 2007 15:42:31 -0000 1.46 --- doc/src/sgml/wal.sgml 10 Dec 2007 14:04:12 -0000 *************** *** 58,65 **** while some are write-back, and the same concerns about data loss exist for write-back drive caches as exist for disk controller caches. Consumer-grade IDE drives are ! particularly likely to contain write-back caches that will not ! survive a power failure. --- 58,74 ---- while some are write-back, and the same concerns about data loss exist for write-back drive caches as exist for disk controller caches. Consumer-grade IDE drives are ! particularly likely to have write-back caches that will not survive a ! power failure. To check write caching on Linux use ! hdparm -I; it is enabled if there is a * next ! to Write cache. hdparm -W can to turn off ! write caching. On FreeBSD use ! atacontrol. (For SCSI disks use sdparm ! to turn off WCE.) On Windows write caching is ! controlled by My Computer\Open\{select disk ! drive}\Properties\Hardware\Properties\Policies\Enable write caching on ! the disk. --ELM1197295586-25695-0_--