summaryrefslogtreecommitdiff
path: root/c1/fd35e4fc6c3c3c41e1bc134eed00c68d04847f
blob: 4f4bedac4bbc6dfcdee82d6e0926d2a35fa3a58b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Return-Path: <tomas@tomasvdw.nl>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 8014C5AC
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Sat,  8 Apr 2017 22:34:13 +0000 (UTC)
X-Greylist: from auto-whitelisted by SQLgrey-1.7.6
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
	[66.111.4.25])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 9624CD4
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Sat,  8 Apr 2017 22:34:12 +0000 (UTC)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42])
	by mailout.nyi.internal (Postfix) with ESMTP id D4CF4209DF;
	Sat,  8 Apr 2017 18:34:11 -0400 (EDT)
Received: from web3 ([10.202.2.213])
	by compute2.internal (MEProxy); Sat, 08 Apr 2017 18:34:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=lLTwZL
	9UyfQoddkIwrrnbBvEKbL+cigp/3qWuuvc9d4=; b=FBc73akumM0ruI9tVLFzXV
	b7FgafmGV3EF9PUWaiLrfLST4zUpaTwfLTDGKNyLRcNtddtvznc+e6GIZ6+CI+S4
	JvstCvP+tXGdM1DJv6osBAutMlfRc3cBcmXTXlp1VQmsw/WyvhzXG/+/6jmxBeRZ
	lnSjmt+elwzcFg/0WJvRCffmtQiaRm2y6ryPHiWKCVEhG65DnyzhB5/DnEmGME4w
	MkB53IUOzb7V7OGxrtPH6Vyxbd8QYrvdSjvwTfIu7TuyD9iNzLxRbKoZzu7ycZwD
	1ePLUVZRFCZAMUD9W9qvktJQbo3WeWefe0dnO1ns2p8iH1UhXO588GUFgBBSPcGw
	==
X-ME-Sender: <xms:Y2XpWFfOxIBdYCTkALKpgmfn-_I-fQc3TKFDk3ZZruBwMEl9adg_Sw>
Received: by mailuser.nyi.internal (Postfix, from userid 99)
	id B1A8B9EC4C; Sat,  8 Apr 2017 18:34:11 -0400 (EDT)
Message-Id: <1491690851.2490976.938672304.0FD56767@webmail.messagingengine.com>
From: Tomas <tomas@tomasvdw.nl>
To: Gregory Maxwell <greg@xiph.org>, Johnson Lau <jl2012@xbt.hk>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="utf-8"
X-Mailer: MessagingEngine.com Webmail Interface - ajax-7c174d5d
Date: Sun, 09 Apr 2017 00:34:11 +0200
References: <1491516747.3791700.936828232.69F82904@webmail.messagingengine.com>
	<CAAS2fgTJ8xOj8zCmBq1LN9OdMV-tDfSjVUPhLpO98cR1w-QAoA@mail.gmail.com>
	<CA+KqGko0cDY29bhznMxJJ7yAUTuB6GaDDNGBRwzssJUxM_53xQ@mail.gmail.com>
	<1491599691.1245876.937920664.6EBA20DC@webmail.messagingengine.com>
	<CAAS2fgTWyX5M-xcELC2vDvGfs01tbGYkpZJCSeNbvn_p4Ecjqg@mail.gmail.com>
	<1491636528.2474173.938219072.54C44183@webmail.messagingengine.com>
	<6F1E6FB6-1342-4BD6-BF83-A160C1A7CD34@xbt.hk>
	<1491681378.2454247.938587616.7199D633@webmail.messagingengine.com>
	<DF7A05F0-4EA7-4CB3-A9BE-491BDA209EF7@xbt.hk>
	<CAAS2fgSueiF51cg2zotwg5FdZQf_jcUgoBgVr5kiHafxXhc6jQ@mail.gmail.com>
In-Reply-To: <CAAS2fgSueiF51cg2zotwg5FdZQf_jcUgoBgVr5kiHafxXhc6jQ@mail.gmail.com>
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID,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: Sat, 08 Apr 2017 22:46:27 +0000
Cc: bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] Using a storage engine without UTXO-index
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Sat, 08 Apr 2017 22:34:13 -0000



On Sun, Apr 9, 2017, at 00:12, Gregory Maxwell wrote:
> In Bitcoin Core the software _explicitly_ and intentionally does not
> exploit mempool pre-validation because doing that very easily leads to
> hard to detect consensus faults and makes all mempool code consensus
> critical when it otherwise is not. There have been bugs in the past
> which would have split the network if this optimization had been used.
> 
> (in particular, I believe I recall one related to correctly removing
> coinbase spends from the mempool during reorganization that made them
> immature; and with the optimization and without the CNB post-test
> would have resulted in nodes that saw the reorg creating and accepting
> an invalid block, while nodes that didn't rejecting it; but because of
> prudent design it was largely harmless).

Although I don't quite follow the details (CNB post-test? Connect block
I assume?), the risks you are describing seem to be rather specific to
Core's implementation. For one, bitcrust does not or use need reorgs at
all.

Do you argue (or can you further explain) that the idea of splitting
script validation (or what you call mempool pre-validation), and order
validation is introducing risks  inherent to the protocol? 

Thanks,
Tomas