3975 Commits

Author SHA1 Message Date
Gavin Andresen
8a88bb6550 Store fewer orphan tx by default, add -maxorphantx option
There is no reason to store thousands of orphan transactions;
normally an orphan's parents will either be broadcast or
mined reasonably quickly.

This pull drops the maximum number of orphans from 10,000 down
to 100, and adds a command-line option (-maxorphantx) that is
just like -maxorphanblocks to override the default.

Conflicts:
	src/main.h
2014-09-27 14:33:07 -06:00
michilumin
94cf9e41d5
Initial check in of branch for conflict resolution 2014-09-27 14:30:53 -06:00
Ross Nicoll
5d718e5456
Set minimum protocol version to 70003 so connections to pre-1.8 clients are rejected. 2014-08-25 01:27:32 +01:00
langerhans
4642b01f90 Merge pull request #622 from rnicoll/1.8-dev-safemode
Disable safe mode around AuxPoW switchover
2014-08-24 16:58:48 +02:00
langerhans
df52e9d3c5 Merge pull request #656 from rnicoll/1.8-dev-proto-version
Tweak protocol version and minimum protocol
2014-08-24 16:25:59 +02:00
Patrick Lodder
b5dddf29cd Condense retarget debug output even more. 2014-08-24 13:51:25 +02:00
Ross Nicoll
0317ce8943
Changed protocol version number to the less extreme 70003.
Changed minimum protocol version to 70002 to block out pre-1.6 nodes.
2014-08-24 12:04:54 +01:00
langerhans
8f365e9bb8 New icons with 7 images 2014-08-23 19:24:35 +02:00
mahongbin
c3e0db41cd Update bitcoin_zh_CN.ts
Update Chinese translation of 'Dogecoin'
2014-08-21 20:54:45 +08:00
Ross Nicoll
72b3139bec
Disable safe mode around AuxPoW switchover. 2014-08-18 20:32:54 +01:00
langerhans
9b3ddb19ce Merge pull request #621 from rnicoll/1.8-dev-block
Set AuxPoW switchover block to 371337
2014-08-18 21:19:31 +02:00
langerhans
c0737a900b Merge pull request #620 from rnicoll/1.8-dev-rpc
Disable AuxPoW RPC commands until switchover block
2014-08-18 21:17:00 +02:00
langerhans
5a186d356e Merge pull request #616 from patricklodder/1.8-dev-auxpow-version
check block version for aux blocks properly for version warning
2014-08-18 21:15:52 +02:00
langerhans
ad579037c8 Merge pull request #613 from rnicoll/1.8-dev-coinbase
Correct format of AuxPoW coinbase script
2014-08-18 21:15:39 +02:00
Ross Nicoll
00423e36ad
Set AuxPoW switchover block to 371337 2014-08-18 20:14:16 +01:00
Ross Nicoll
bfdc854dbd
Disable AuxPoW RPC commands until switchover block
AuxPoW RPC commands now return a failure message until the switchover block on the respective
network. Also cleaned up RPC error values to use enum values rather than magic numbers.
2014-08-18 19:08:54 +01:00
Ross Nicoll
4f3cb93c6f
Update protocol version
Change protocol version so post-AuxPoW clients can refuse to deal with pre-AuxPoW clients.
This mitigates excessive bandwidth usage by pre-AuxPoW clients repeatedly requesting blocks
they don't know how to use.
2014-08-17 22:55:23 +01:00
Patrick Lodder
2d1ea2c307 check block version for aux blocks properly for version warning
UpdateTip() was checking block versions against one of two
possible AuxPoW versions. Added consts for version checks and
IsAuxPowVersion(int nVersion) for use with UpdateTip()'s
block version check.
2014-08-17 22:39:28 +02:00
langerhans
51f69a5a5e Merge pull request #614 from rnicoll/1.8-dev-forkwarn
Adjust trigger conditions for safe mode to suit Dogecoin block time
2014-08-17 20:15:11 +02:00
langerhans
01d8bd1d3c Merge pull request #615 from rnicoll/1.8-dev-logo
Update the wallet logo to represent 1.8
2014-08-17 18:16:05 +02:00
Ross Nicoll
b969d41f23
Update the wallet logo to represent 1.8. 2014-08-17 14:31:03 +01:00
Ross Nicoll
02ab973c22
Adjust trigger conditions for safe mode to suit Dogecoin block time.
Values for triggering safe mode are time sensitive, and have not been
modified to take into account the differing block times between Bitcoin and
Dogecoin. This patch changes the interval across which a fork must exist to
override any other fork to 6 hours, and increases the number of blocks an
invalid fork must have before it trips safe mode.

This should help mitigate disruption in the 1.7/1.8 hard fork, but miners will
still need to run with -disablesafemode for the preceeding and following 2-3
days to be sure.
2014-08-17 13:46:55 +01:00
Ross Nicoll
23bcb1bbd2
Correct AuxPoW coinbase script concatenation operators.
MakeCoinbaseWithAux() was incorrectly using << to add a CScript onto a
CScript instead of the + operator. Operators corrected and structure
now more closely reflects coinbase script assembly done elsewhere.
2014-08-17 12:09:40 +01:00
Ross Nicoll
223ed2eadd Correct format of AuxPow coinbase script.
AuxPoW coinbase scripts now include block height as per BIP0034, which also
resolves issue of transactions being generated which collide.
2014-08-17 11:24:31 +01:00
Ross Nicoll
67d6602fa5
Updated checkpoint statistics. 2014-08-16 15:18:56 +01:00
Ross Nicoll
a8cdefe23f
Added further diagnostic detail in case of transaction ID clash. 2014-08-16 14:21:13 +01:00
Ross Nicoll
14befee65a
Added checkpoints in preparation for 1.8 release. 2014-08-16 14:19:53 +01:00
langerhans
769fbade61 Merge pull request #601 from rnicoll/1.8-dev-leveldb
Fix assertion error loading 1.7 blocks in 1.8 client
2014-08-09 18:19:25 +02:00
Ross Nicoll
c948d4d85b
Added explicit check for key length when loading blocks from disk, to catch 1.7/1.8 change. This
avoids the problem where mis-loaded blocks later cause an assertion error.
2014-08-09 15:36:48 +01:00
langerhans
76a4566be0 Merge pull request #598 from rnicoll/1.8-dev-reindex
Close cursor in case of error reading blocks
2014-08-08 22:27:10 +02:00
langerhans
435c75b523 Merge pull request #597 from rnicoll/1.8-dev-spv
Fix assertion crash when using SPV clients
2014-08-08 22:26:47 +02:00
Ross Nicoll
89fa1c237b Pointer for GetStats() is now scoped rather than manually deleted. 2014-08-08 20:48:14 +01:00
Ross Nicoll
49c6e8a04f Added missing step of deleting cursor in case of an error reading blocks from disk. 2014-08-08 20:48:13 +01:00
Ross Nicoll
d9b57edc86
Patched copying of block headers so that auxpow is also copied. Fixes assertion crash when using SPV clients. 2014-08-07 20:17:23 +01:00
Ross Nicoll
4776978940
Removed unused ScanHash_CryptoPP() method. 2014-08-07 20:00:03 +01:00
Patrick Lodder
7d18abff71 Apply predetermined block for testnet fork
PR #589 caused a condition for testnet difficulty to not match at
a couple of cases pre block 145k leading to issues with -reindex.

This makes the testnet fork hard at block 157500, while retaining
every case before that block.
2014-08-05 02:27:28 +02:00
langerhans
7b70a67db0 Merge pull request #591 from patricklodder/1.8-version-check-fix
Check against the right aux block version number
2014-08-04 19:17:20 +02:00
langerhans
553a17edaa Merge pull request #589 from patricklodder/1.8-dev-testnet-retarget
Break testnet difficulty reset out of never matching condition.
2014-08-04 19:10:17 +02:00
langerhans
2ad389bd43 Merge pull request #588 from patricklodder/1.8-dev-retargeting
Tidy up retargeting code and it's debug.log output
2014-08-04 18:52:21 +02:00
langerhans
a61f92618a Merge pull request #585 from rnicoll/1.8-dev-cleaning
Revert unneeded changes introduced as a side-effect AuxPoW.
2014-08-04 18:52:04 +02:00
Patrick Lodder
29bc6bb660 Check against the right aux block version number
Previous commit 9e9babb was based on a wrong assumption, actual
CBlockHeader->nVersion for auxpow blocks is
CBlockHeader::CURRENT_VERSION | (AUXPOW_CHAIN_ID
   * BLOCK_VERSION_CHAIN_START)

and not BLOCK_VERSION_AUXPOW
2014-08-04 18:18:24 +02:00
Patrick Lodder
766c9a0651 Break testnet difficulty reset out of never matching condition.
Testnet resets difficulty if after 2 minutes no block has been
found. However, this feature was implemented with the condition
to only trigger on blocks where no retargeting is done. Since
the introduction of DigiShield, we retarget at every block,
making this condition never to be matched. This commit removes
that condition.

WARNING: THIS COMMIT HARDFORKS THE DOGECOIN TESTNET!

The main network is not affected by this change.
2014-08-04 14:14:36 +02:00
sigwo
d29fef977e version bump
version bump
2014-08-04 08:11:04 -04:00
Patrick Lodder
07f31a38f4 Tidy up retargeting code and debug.log output.
- remove unused int64_t retargetSpacing
- modulate timespan in an isolated int64_t nModulatedTimespan
- keep nActualTimespan intact, to retain the original value
- compress debug.log output from 5 into 3 lines while retaining
  all information.
2014-08-04 11:05:47 +02:00
Ross Nicoll
fee8930ddf
Revert unneeded changes introduced as a side-effect AuxPoW. 2014-08-04 01:14:29 +01:00
Patrick Lodder
9e9babb761 Make version check in UpdateTip() consider auxpow block version 2014-08-03 17:05:59 +02:00
Patrick Lodder
4456764bd3 Set chain id to 0x0062
0x0062 is 98 in decimal. Dedicated to Josh Wise.
2014-08-03 17:05:59 +02:00
Patrick Lodder
aeb626aeeb extracted auxpow consts
set testnet start of auxpow to block 158100
2014-08-03 17:05:49 +02:00
Patrick Lodder
b6a2963042 send auxpow debug info to debug.log instead of stdout 2014-08-01 16:47:03 +02:00
Patrick Lodder
5f9b807608 Replace getauxblock CBigNum with CScriptNum 2014-08-01 16:43:05 +02:00