Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id C9FA58A5 for ; Fri, 30 Oct 2015 04:04:37 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 59711E4 for ; Fri, 30 Oct 2015 04:04:37 +0000 (UTC) Received: from [192.168.1.71] ([50.92.106.24]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0Lrw2c-1acVgC3I7C-013fek; Fri, 30 Oct 2015 05:04:27 +0100 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) From: Peter R In-Reply-To: Date: Thu, 29 Oct 2015 21:04:22 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <3CB90C47-293E-4C18-A381-E5203483D68F@gmx.com> References: <5631C363.5060705@neomailbox.net> <201510290803.52734.luke@dashjr.org> <5632DE33.7030600@bitcartel.com> To: Gregory Maxwell X-Mailer: Apple Mail (2.2104) X-Provags-ID: V03:K0:bL0pNKynBfzMu1ZYMXOvxXWyKzeGX2iyENRRDDN9HbCBkzT9ZIY UGM4IaFSVioIYa25fr9amaIG8vkkdQOjJyljhSgosL2qlrYfG7se8lOgV6r05h+IJR3Oh6T i8uH8ckVEsjm/iFs0V+XV5XkVU7lhkKVQ4RDbuMPvxaIH3/pyWHOZ3OJQOoFKU8Ixv133kS hdgQyQ7Tvq78zQK8SbTlg== X-UI-Out-Filterresults: notjunk:1;V01:K0:UxJ/NYiPa3c=:DudwNrF/0rmaLKtyCAv57q +ROqPIkfy4/PIZBnaVR1VkV/FfjKj6l/T1/7KAwgMOWgmdvnABw+RAoKh9Cf1dgSHvl1CATea 5rE7hAcB9kpiIs/fgYvlI5WLfrGNBgtKRZ1MqOvDA9CF5x5xSRtTq27BozwkaNddZZXvqLpFH EBz+x5pmz3ZGHnmY662xpFuSkHTuLpP1bOvLKA9Ualf8g5WQ8ktVYPmmUUy46OpQupPpJZ17H uHbWZU3l9v2CpyLQmSe40KyZ7QsktXLuqEYZxRnahTXy1/QP6rGrsGS4Rrv10RBPgMs0ZdTKJ h3l0sw2ZoSroM7BnamDLH56EByQHjsuvSujXEbkQTGG+eRtO7Z+wpFpHYuY/mu9LlPuUe4tEu kpAReyEqkU0tWmFXhqPQren83U2zQ/rZYOPO9E54Jd2n2I8kFfXqXudJVistqAUH5AdOPXWoo lkCjoZKDtfY5I8wqFvZbv6/YbCEKT0JfaBC3KQ1KhKLb3Uwpq+JsG+O/BEsqMzSUHU9efJDGM nfNtttG9vjYNiup8NkRlf1m3+tajahcbAhkHkPmn/8V0AA8Fy0P+5ndB74YSDjfNdMe87d+bE yXV+eIfQHNFYuo3gh8wE582oeR6N5XABFK8kQ9yXPfGHRnZzNHn/qsDN3VTWrn0hMcTkszh6z 5Tz+xkfRSF0xt9f2KSet7VE1vejFA1xZrzu9F13iafz0mJ5Fauz6Vv8afRf0CFPiRXhJh8qlL rOWxZrJ/OzXHToWt+NzwK+h2KLvKFIxoVHLoW7sctOMW2vTOU5Nkz5h+TQrlh4CwKllAvBnM7 TwLTbsz X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,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 X-Mailman-Approved-At: Fri, 30 Oct 2015 05:30:24 +0000 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: Fri, 30 Oct 2015 04:04:37 -0000 > On Oct 29, 2015, at 8:35 PM, Gregory Maxwell via bitcoin-dev = wrote: >=20 > On Fri, Oct 30, 2015 at 3:04 AM, Simon Liu via bitcoin-dev > wrote: >> Given that UTXO storage is considered critical, it seems reasonable = to >=20 > This sounds like a misunderstanding of what consensus criticial means. > It does not mean that it must be right (though obviously that is > preferable) but that it must be _consistent_, between all nodes. Can you give a specific example of how nodes that used different = database technologies might determine different answers to whether a = given transaction is valid or invalid? I=E2=80=99m not a database = expert, but to me it would seem that if all the unspent outputs can be = found in the database, and if the relevant information about each output = can be retrieved without corruption, then that=E2=80=99s all that really = matters as far as the database is concerned. Let=E2=80=99s use an unspent pay-to-pubkey-hash output as an example: = Alice spends this to Bob (she signs it properly), the TX propagates = across the network and=E2=80=A6then what? Do some nodes disagree on = whether or not the TX is valid? What exactly would they disagree on? = Are you suggesting that a database bug would cause some nodes to think = the output was actually already spent, while others can correctly see = that it=E2=80=99s unspent? Or maybe some nodes think the output = doesn=E2=80=99t exist while others do? Or are you suggesting that the = details about this output might be retrieved with errors from certain = databases but correctly from others? =20 I=E2=80=99d like a concrete example to help me understand why more than = one implementation of something like the UTXO database would be = unreasonable. =20 Peter