summaryrefslogtreecommitdiff
path: root/1c/18d4aa182514daa3d29b676b6b536ef71c45ba
blob: e59b0706217eb2f067d3b39694084e3c302130c4 (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
Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <luke@dashjr.org>) id 1SfBXp-0006oP-Rw
	for bitcoin-development@lists.sourceforge.net;
	Thu, 14 Jun 2012 15:01:09 +0000
X-ACL-Warn: 
Received: from zinan.dashjr.org ([173.242.112.54])
	by sog-mx-4.v43.ch3.sourceforge.com with esmtp (Exim 4.76)
	id 1SfBXj-0003ux-Px for bitcoin-development@lists.sourceforge.net;
	Thu, 14 Jun 2012 15:01:09 +0000
Received: from ishibashi.localnet (unknown [97.96.85.141])
	(Authenticated sender: luke-jr)
	by zinan.dashjr.org (Postfix) with ESMTPSA id DF965560505;
	Thu, 14 Jun 2012 15:00:55 +0000 (UTC)
From: "Luke-Jr" <luke@dashjr.org>
To: "bitcoin-development@lists.sourceforge.net"
	<bitcoin-development@lists.sourceforge.net>, 
	Gavin Andresen <gavinandresen@gmail.com>
Date: Thu, 14 Jun 2012 15:00:45 +0000
User-Agent: KMail/1.13.7 (Linux/3.4.0-gentoo-nestfix; KDE/4.8.1; x86_64; ; )
X-PGP-Key-Fingerprint: E463 A93F 5F31 17EE DE6C 7316 BD02 9424 21F4 889F
X-PGP-Key-ID: BD02942421F4889F
X-PGP-Keyserver: hkp://pgp.mit.edu
MIME-Version: 1.0
Content-Type: text/plain;
  charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-Id: <201206141500.49573.luke@dashjr.org>
X-Spam-Score: -0.0 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay
	domain 0.0 AWL AWL: From: address is in the auto white-list
X-Headers-End: 1SfBXj-0003ux-Px
Subject: [Bitcoin-development] BIP16 backport bug (0.4.x and 0.5.x stuck on
	block 177617)
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Thu, 14 Jun 2012 15:01:09 -0000

Block 177618 was rejected by BIP16-enabled backports (0.4.x and 0.5.x) due to 
containing a P2SH redemption with over 200 bytes in. Since the BIP16 code uses 
IsPushOnly to check the scriptSig for compliance, and IsPushOnly in these 
versions also enforced the 200-byte "is standard" rule, they were effectively 
treating it as a network rule. This was not a problem in 0.6 because the 
original OP_EVAL commit (e679ec9) moved the check outside of IsPushOnly.

This problem could have been avoided if either IsPushOnly was renamed when its 
semantics/behaviour changed significantly, or I inspected the OP_EVAL commit 
in detail instead of skipping it over as a new feature and not bugfixes. 
Additionally, it might have helped, if the commit message mentioned the 
change, but I'd probably have still missed it as it wasn't relevant until 
months later.

I will be releasing 0.4.7 and 0.5.6 hopefully in the next 24 hours to address 
this bug, along with instructions to get unstuck:
    1. Ensure you have the minimum required 1280 MB memory available
    2. Create a new file in your bitcoin directory (the same one with
       wallet.dat) called DB_CONFIG with the following two lines:
           set_lk_max_locks   1000000
           set_lk_max_objects 1000000
    3. Start bitcoind or Bitcoin-Qt
    4. WAIT AT LEAST SIX HOURS
       Your client will NOT show any signs of making progress during this time
    5. When complete, your client should be up-to-date on block count
    6. At this time, you may wish to delete the DB_CONFIG file and restart
       your client, to use less memory

Luke