Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 24DCC8F5 for ; Sun, 15 Nov 2015 01:08:18 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-ig0-f173.google.com (mail-ig0-f173.google.com [209.85.213.173]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 22C2EA8 for ; Sun, 15 Nov 2015 01:08:17 +0000 (UTC) Received: by igvi2 with SMTP id i2so57246162igv.0 for ; Sat, 14 Nov 2015 17:08:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=50hNF9bDJ0dN5tuQj2AJYDIx6Sqm3DO7Ief8oGeZC1c=; b=H8aSQ9nTWa0wjSRewRo0cMYovPIE//F2IORehsSXd9HwHgHogDnkPJlDrgVo8Xd1U7 9X/u6djLYsNK2vGqgS6GbYBilocS8yWUoqSwxs7a378IJ6Va2IQK7Ij/q4MB1FwbouRC Hyr2MXW4k2DW/k1q+9WI0IZkn8G+0Z316D3iCphbG7zCcehuTBxolcQflAY1wRUzAKfM 2PiN2d/lA56tq/np8w4P5hZ4+UIzcdYbbE93yAsiDiEz5I82+U5hHdlmscix760ccFTy ujvzB9St6Kbl8w4xlxfITawc0cr0lRjaFD9JuUJuW6TypkdDI9y0sfIcD7VtfJLgmLDS xAlw== MIME-Version: 1.0 X-Received: by 10.50.12.42 with SMTP id v10mr667985igb.48.1447549696604; Sat, 14 Nov 2015 17:08:16 -0800 (PST) Received: by 10.107.192.199 with HTTP; Sat, 14 Nov 2015 17:08:16 -0800 (PST) In-Reply-To: <571D9B7F-077D-4B80-B577-1C18FF2ECF31@gmx.com> References: <5631C363.5060705@neomailbox.net> <201510290803.52734.luke@dashjr.org> <5632DE33.7030600@bitcartel.com> <3CB90C47-293E-4C18-A381-E5203483D68F@gmx.com> <571D9B7F-077D-4B80-B577-1C18FF2ECF31@gmx.com> Date: Sun, 15 Nov 2015 01:08:16 +0000 Message-ID: From: Gregory Maxwell To: Peter R Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: Bitcoin Dev , telemaco Subject: Re: [bitcoin-dev] [patch] Switching Bitcoin Core to sqlite db X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Nov 2015 01:08:18 -0000 On Sun, Nov 15, 2015 at 1:02 AM, Peter R wrote: > Hi Greg, > > Like you said, the issue with using more than one database technology is = not that one node would prove that Block X is valid while the another node = proves that Block X is NOT valid. Instead, the problem is that one node mi= ght say =E2=80=9Cvalid=E2=80=9D while the other node says =E2=80=9CI don=E2= =80=99t know.=E2=80=9D Sometimes errors are such that you can catch them (if you're super vigilant and know an error is even possible in that case)-- and indeed, in that case you can get a "I don't know, something is wrong.", other times errors are undetectable. > In reality, this fear is largely unfounded. I cited an issue in leveldb (before we used it) where it would silently fail to return records. > If the software was written with the philosophy that tracking consensus w= as more important than bug-for-bug compatibility, it would have returned an= exception rather than =E2=80=9Cinvalid.=E2=80=9D That invariant requires the software to be completely free of errors that would violate it.