Received: from localhost (unknown [200.46.204.183]) by postgresql.org (Postfix) with ESMTP id 0C9A265038C for ; Thu, 28 Aug 2008 22:52:45 -0300 (ADT) Received: from postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 49125-01 for ; Thu, 28 Aug 2008 22:52:33 -0300 (ADT) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from rv-out-0506.google.com (rv-out-0506.google.com [209.85.198.234]) by postgresql.org (Postfix) with ESMTP id 53A0C650356 for ; Thu, 28 Aug 2008 22:52:02 -0300 (ADT) Received: by rv-out-0506.google.com with SMTP id b25so863545rvf.43 for ; Thu, 28 Aug 2008 18:52:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=zFQkAuopSQPgkBDsTXvXoxvPSWHQ3pf/6TbGHllMSA0=; b=iSwMEv1Lucw5gktkMsmUmOVvCMlPC+VYtbY75Ll7wWgaFlA/tnehlljfCVqRRJZdB7 q+PVcbPxOhHigMN3No8j3c0Vkl+IjCgsS6aq2f/s0RixVO+vAfL6Suc1ck3nYcf9FfDi wwa5ahO91e773Ggv+N6CDrI5FZXnIj0D1V74k= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=uzUz+ZcSf+HnLF4msA7rKoY1Kl9wUahjzyTbMQPP6rnay/L/BXu+e+MzF1Pl/r+rMt R5JOGpYesWqpF2nVue4rxyhwtUFtH+2Kim2H+3opnyUuemRuSJ00Zaa3p2/ayWuLWZh3 /jiJnkaCpshHmzhKf49dH9KQbdunulP1YBIcA= Received: by 10.141.161.6 with SMTP id n6mr1146866rvo.201.1219974721040; Thu, 28 Aug 2008 18:52:01 -0700 (PDT) Received: by 10.141.197.1 with HTTP; Thu, 28 Aug 2008 18:52:00 -0700 (PDT) Message-ID: Date: Thu, 28 Aug 2008 19:52:00 -0600 From: "Scott Marlowe" To: david@lang.hm Subject: Re: select on 22 GB table causes "An I/O error occured while sending to the backend." exception Cc: "Matthew Wakeling" , "PostgreSQL Performance" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <48B6EA7E.2090707@emolecules.com> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200808/403 X-Sequence-Number: 31284 On Thu, Aug 28, 2008 at 7:16 PM, wrote: > the ACID guarantees that postgres is making are supposed to mean that even > if the machine dies, the CPU goes up in smoke, etc, the transactions that > are completed will not be corrupted. And if any of those things happens, the machine will shut down and you'll be safe. > if killing the process voids all the ACID protection then something is > seriously wrong. No, your understanding of what postgresql can expect to have happen to it are wrong. You'll lose data integrity if: If a CPU starts creating bad output that gets written to disk, your RAID controller starts writing garbage to disk, your memory has bad bits and you don't have ECC, Some program hijacks a postgres process and starts writing random bits in the code, some program comes along and kills the postmaster, which coordinates all the backends, and corrupts shared data in the process. > it may loose transactions that are in flight, but it should not corrupt the > database. That's true for anything that just stops the machine or all the postgresql processes dead. It's not true for a machine that is misbehaving. And any server that randomly kills processes is misbehaving.