Miron Cuperman (devrandom)
0d4daee3c4
Java 5 compatibility - remove some @Override pragmas
2011-07-20 20:17:01 +00:00
Mike Hearn
18d45f0590
Update repo URLs. Patch from Gary Rowe.
2011-07-20 10:51:18 +00:00
Miron Cuperman (devrandom)
89adfe62d3
Merge peergroup branch into trunk
2011-07-19 18:22:11 +00:00
Miron Cuperman (devrandom)
b9aae06490
Default PeerGroup connections now 4
2011-07-19 17:59:39 +00:00
Mike Hearn
440b2d28ac
Fix IrcDiscovery to not expect the IRC server to return the user list when joining the server automatically. This does not happen for all IRC server implementations. Rather the NAMES command should be sent to ensure that the user list is returned. It also fixes that the returned lines start with a colon that has to be removed before sending the line to the parseUserList method. Patch from Wolfgang Nagele. Resolves issue 50.
2011-07-18 20:39:00 +00:00
Mike Hearn
c3933a7773
Make the unit tests more realistic and fix two bugs this revealed:
...
1) Receiving coins regressed after the last optimization. Resolves issue 49.
2) Reorg handling expected to be able to connect all inputs.
Also other minor fixes and small additions.
2011-07-18 20:15:39 +00:00
Miron Cuperman (devrandom)
f68edc80cc
Fix bug in FetchBlock introduced by peergroup merge
2011-07-15 23:25:45 +00:00
Miron Cuperman (devrandom)
71931ccb76
Merge trunk into peerroup
2011-07-15 23:03:23 +00:00
Miron Cuperman (devrandom)
29d996b552
PeerGroup cleanup 2
2011-07-15 22:59:15 +00:00
Miron Cuperman (devrandom)
d7d52cadd2
PeerGroup cleanup
2011-07-14 20:13:11 +00:00
Mike Hearn
e990bcd181
Add distribution management section to Maven pom.xml. Patch from Gary Rowe. Update issue 13.
2011-07-14 07:12:17 +00:00
Mike Hearn
1a4e2e67d1
Quick hack to not crash when connected to a node that has less of the chain than we do. Real fix must wait for PeerGroup to land. Resolves issue 44.
2011-07-13 20:52:08 +00:00
Mike Hearn
ea8cbd7465
Don't pre-calculate the hash in the Transaction parse code. Speeds up processing of large blocks with no relevant transactions.
2011-07-10 17:38:18 +00:00
Mike Hearn
53d5d7572b
Delete unused setFakeHashForTesting method.
2011-07-10 15:53:50 +00:00
Mike Hearn
48535f9a9c
Optimize chain download further by skipping merkle root verification unless there are transactions relevant to a wallet in the block. Refactor some code out of WalletTest into a new static TestUtils class.
2011-07-10 15:52:06 +00:00
Miron Cuperman (devrandom)
8e84d71308
PeerGroup - fix copyright and text
2011-07-06 20:41:41 +00:00
Miron Cuperman (devrandom)
6053c9087c
PeerGroup first draft - new files
2011-07-06 20:39:17 +00:00
Miron Cuperman (devrandom)
cd2f4c655b
PeerGroup first draft
2011-07-06 20:38:38 +00:00
Mike Hearn
85caefbd4d
Store 2050 blocks in the BoundedOverheadBlockStore memory cache. This eliminates the delay on difficulty transitions. We now regularly hit 500 blocks per second, ie, we are sender-constrained.
2011-07-06 15:53:50 +00:00
Mike Hearn
af843bc424
Minor style fix
2011-07-06 15:44:50 +00:00
Mike Hearn
16f2fae0ce
Replace reflection with an if ladder for deserialization, as reflection was dominating the profiles (60% of all time spent downloading the chain). Takes us from around 250-300 blocks per second to over 400.
2011-07-06 15:44:20 +00:00
Mike Hearn
d654a33376
Clone cached hash in Block.cloneAsHeader(). Before this hash recalculation was about half the time spent inside BoundedOverheadBlockStore.put(), now it does not appear in the profiles.
2011-07-06 15:30:08 +00:00
Mike Hearn
5dbd6c638b
Don't construct a debug message unless that channel is enabled. Takes serialize() out of the profiles.
2011-07-06 15:25:15 +00:00
Mike Hearn
d37723afbf
Optimize Block.cloneAsHeader() which was taking about 25% of the CPU during chain download on Android. The previous implementation was lazy (serialize and deserialize), the new implementation is much faster and not much more complex.
...
The profiles are now dominated by checking difficulty transitions.
2011-07-06 15:15:44 +00:00
Mike Hearn
ff52cfd86b
Add a tool that prints out an arbitrary block given its hash.
2011-07-06 13:43:46 +00:00
Mike Hearn
10fef0b480
Add a constructor that allows wallet-less operation (now possible due to the previous patch to support multiple wallets).
2011-07-06 13:42:31 +00:00
Mike Hearn
062ad32851
Fix the getBlock() method to use the correct message type.
2011-07-06 13:40:54 +00:00
Mike Hearn
1f5922b2f4
Add a removeEventListener method. Idea from Andreas. Resolves issue 27.
2011-07-06 12:44:18 +00:00
Mike Hearn
2e2c941919
Support attaching multiple wallets to a single BlockChain. Patch from Jan Møller. Resolves issue 39.
2011-07-06 12:36:19 +00:00
Mike Hearn
2c74beb9f5
Fix a bug in Transaction.getValueSentFromMe() in which inputs connected to outputs that existed in the wallet but were not actually owned by us were counted. Resolves issue 36. Patch from Jan Møller.
2011-07-06 12:12:18 +00:00
Mike Hearn
bcff039a62
Remove the test prefix from WalletTest methods. It's unnecessary with JUnit 4.
2011-07-06 12:01:05 +00:00
Mike Hearn
61488d88d6
Add dnsseed.bluematt.me to the DNS discovery list.
2011-07-06 11:59:09 +00:00
Mike Hearn
037d99770d
Bump version number to 0.3-SNAPSHOT
2011-07-06 11:48:24 +00:00
Miron Cuperman (devrandom)
54b44be316
Peer groups
2011-07-01 21:42:21 +00:00
Mike Hearn
8d302120f8
Remove stray import.
2011-07-01 09:22:39 +00:00
Mike Hearn
3b8b0833c5
Use Sha256Hash more consistently, improve the class a bit.
...
Note that the endianness of the hashes is still very ad-hoc and messy. Next step is to pick an endianness and stick with it, to reduce the number of times reverseBytes is used.
2011-06-30 20:33:41 +00:00
Mike Hearn
46ccc7389d
Fix a typo bug in IrcDiscoveryTest. Patch from Nathan Baulch. Resolves issue 33.
2011-06-30 19:00:52 +00:00
Mike Hearn
cc70107e27
Move some classes into new packages.
2011-06-29 17:45:18 +00:00
Mike Hearn
675abc2974
Remove transactions from the dead pool when they become live, and from pending when they become dead. Addresses comments from Miron.
2011-06-27 19:56:37 +00:00
Mike Hearn
ca84bea462
Refresh the TODO file
2011-06-27 14:34:48 +00:00
Mike Hearn
c7affe156d
Move javadocs to the maven directory, check in fresh set
2011-06-27 14:29:17 +00:00
Mike Hearn
653d544b53
Minor fixes.
2011-06-27 14:18:47 +00:00
Mike Hearn
dca09950e7
Attempt to exclude Bouncy Castle from javadocs/coverage reports. Doesn't work for coverage for some reason.
2011-06-27 14:17:11 +00:00
Mike Hearn
7d007dc329
Update README to talk about Maven.
2011-06-27 14:16:38 +00:00
Mike Hearn
51c7bd7224
Checked in extra POM code. Patch by Gary Rowe.
2011-06-27 13:08:59 +00:00
Mike Hearn
5114e6ccec
Don't output an info log for every block downloaded.
2011-06-27 11:37:39 +00:00
Mike Hearn
212faf078c
Bugfix from Noa Resare. Resolves issue 29.
2011-06-27 11:25:43 +00:00
Mike Hearn
66e596a8eb
De-Satoshize the buildMerkleTree function:
...
- Clarify the terminology in the existing explanation.
- Add an explanation of what the point of the structure is.
- Note how non-power-of-two transaction list sizes are handled.
- Rename variables to be more helpful than i,i2,j etc.
- Add a more detailed explanation of each step of the algorithm.
2011-06-24 16:18:06 +00:00
Mike Hearn
65bb4a20f8
Fix PeerAddress serialization and add a test. Patch from Noa Resare. Fixes issue 29.
2011-06-24 13:03:23 +00:00
Mike Hearn
d1385d50df
Ignore duplicate adds of the chain head.
2011-06-14 16:01:38 +00:00