Mike Hearn
3a405302bb
More memory optimisations.
...
Run the wallet txConfidenceListener on the calling thread. Move tx broadcast that occurs inside setTransactionBroadcaster outside the wallet lock to avoid inverting on the mempool class (via PeerGroup, but that doesn't lock on the broadcast path).
This makes memory usage smoother by avoiding the creation of tons of closures and spamming the event thread with them.
2014-01-14 19:06:06 +01:00
Mike Hearn
d7b3766c4b
Memory optimisations to avoid OOM when the user thread falls behind.
...
- Remove needless recalculations of the Bloom filter on any wallet change, instead of just when keys/scripts are added. This may fix one of the privacy leak issues too.
- Run fast catchup/filter recalculations on the dedicated PeerGroup thread instead of abusing the user thread. Resolves a TODO.
- Replace the user thread SingleThreadedExecutor with a custom class that blocks the submitting thread and logs a warning if the queue is saturated, to avoid building up a backlog of closures.
2014-01-14 18:49:09 +01:00
Mike Hearn
e0b698a2e9
Threading: experiment with limiting the user/event thread to 100 pending closures.
2014-01-14 15:25:38 +01:00
Mike Hearn
941bf330a4
Script: intern commonly used chunks.
2014-01-13 14:58:31 +01:00
Mike Hearn
843489111e
Quick hack to try and reduce memory consumption for Androids.
...
Takes a test wallet from around 11.3mb to 9.6mb
2014-01-13 14:58:31 +01:00
Mike Hearn
d50412e24c
Wallet: log exceptions during save.
2014-01-13 14:25:01 +01:00
Mike Hearn
fa53806ef5
WalletTool: bit more cleanup.
2014-01-13 12:30:00 +01:00
Mike Hearn
c0617b31b2
Simplify the WalletTool command line and move help to an external file.
2014-01-12 21:11:35 +01:00
gubatron
0c2f362795
refactor s/Utils.now().getTime()/Utils.currentTimeMillis()/g
2014-01-07 16:16:02 +01:00
Mike Hearn
7324798242
Remove some superfluous methods in HDUtils
2014-01-07 15:23:26 +01:00
Mike Hearn
34e2d1596f
Address: rename a static ctor method to be more accurate.
2014-01-07 15:22:00 +01:00
Mike Hearn
351299c9ab
Add a new DNS seed from Chris Decker.
...
Vouch: Chris is a researcher at ETH Zurich who I have met several times. He has run several useful experiments and analyses on the Bitcoin network.
2014-01-06 15:23:35 +01:00
Mike Hearn
d0cd770d62
Cleanup.
...
Add lots more nullity annotations.
Clear lots of nullity static analysis warnings.
Delete some dead code.
Simplify a few expressions.
Resolves issue 317.
2013-12-24 00:40:19 +00:00
Devrandom
3d99be48bc
Priority queue and exponential backoff for PeerGroup
...
Connect to peers in a service loop thread.
Resolves issue #159
Resolves issue #503
2013-12-23 22:57:19 +00:00
Mike Hearn
b0ce535aa9
PeerGroup: clear some static analysis warnings. Remove dead code.
2013-12-23 21:45:01 +00:00
Mike Hearn
2b577840b5
WalletTemplate: refresh checkpoints file.
2013-12-23 20:09:24 +00:00
Mike Hearn
aaa539bd80
Networking: bump default connect timeout to 5 seconds.
...
Improve some logging.
2013-12-23 20:00:24 +00:00
Mike Hearn
1f37350161
Transaction: clear a couple of static analysis warnings.
2013-12-22 19:13:41 +01:00
Mike Hearn
c5665d68b5
Wallet: misc cleanups.
...
Clear some static analysis warnings.
Throw more appropriate exception types in some cases.
Add a few internal assertions.
Better nullity annotations.
2013-12-22 19:13:23 +01:00
Mike Hearn
f318808cf7
Clean up WalletTransaction and serialization code a bit.
2013-12-22 19:04:24 +01:00
Mike Hearn
b3673999d4
Move WalletTransaction into the wallet package.
2013-12-22 18:48:46 +01:00
Mike Hearn
43460f451a
MnemonicCode: Clean up a bit.
2013-12-20 17:35:11 +01:00
Ken Sedgwick
29e2af7ec0
Update to latest version of mnemonic code spec from the Trezor team.
2013-12-20 17:15:24 +01:00
Mike Hearn
8cc1920fa2
ECKey: use sumOfTwoMultiples for better/faster key recovery.
...
Thanks to Peter Dettman for the tip. Resolves issue 492.
2013-12-15 14:55:43 -08:00
Mike Hearn
e9bf717409
ConnectionHandler: Remove a always-true if condition.
2013-12-15 09:31:07 -08:00
Mike Hearn
25a08c6d75
NioClientManager: minor fix revealed by static analysis.
2013-12-15 09:29:59 -08:00
Mike Hearn
42e75b86cf
PeerGroup: add a couple of missing nullable annotations
2013-12-15 09:27:38 -08:00
Matt Corallo
c61ec5023e
Fix race in TestWithNetworkConnections
...
There was a nasty bug where a connection-failed interrupt was
run afer any interruptible calls were made, making the next
test-case fail due to interruption.
2013-12-15 09:27:19 -08:00
Mike Hearn
f7a944983c
ECKey: use Bouncy Castle to decompress keys. Thanks to Peter Dettman for the hint. Resolves issue 493.
2013-12-14 14:12:52 -08:00
Mike Hearn
8f48b119b7
AbstractBlockChain: minor style fixes from the inspector.
2013-12-14 13:35:22 -08:00
Mike Hearn
30455cb5ce
Suppress some more info logging and update some javadocs.
2013-12-14 13:21:33 -08:00
Devrandom
462c75324e
Faster FP tracking using double exponential
2013-12-14 12:42:44 -08:00
Mike Hearn
1293e42aa3
BloomFilter: minor readability tweak
2013-12-14 11:42:41 -08:00
Matt Corallo
2f29660d0d
Fix broken test case.
2013-12-14 01:11:52 -05:00
Mike Hearn
77f99a596f
Log balance in wallet.toString better
2013-12-13 16:57:28 -08:00
Mike Hearn
cdfa0ae61b
ECKeyTest: once again, fix a flaky decrypt test. There's no MAC on the encrypted bytes so you can't assume padding checks will always catch corrupted data.
2013-12-13 16:08:54 -08:00
Devrandom
7e4f6369e4
Clean up false positive handling, add unit test
2013-12-13 16:00:42 -08:00
Devrandom
ba9415b3ee
Force update Bloom filter when false positive rate gets high
2013-12-13 16:00:41 -08:00
Devrandom
751434ba7c
Fix bloom filter sizing with watched scripts
2013-12-13 15:59:07 -08:00
Devrandom
606f199e73
Update Miron's email address
2013-12-13 15:59:06 -08:00
Mike Hearn
86b42b7fe5
Remove disconnectOldVersions2 as it tests nothing, probably a bad merge conflict.
2013-12-13 15:55:08 -08:00
Mike Hearn
e4e2e60627
Fix DnsDiscovery javadocs and make a couple of fields final.
2013-12-13 09:29:08 -08:00
Mike Hearn
c278867186
Add a unit test for Script.toString and don't emit trailing whitespace.
2013-12-12 08:11:23 -08:00
Mike Hearn
4bbcfc4377
Don't print script creation timestamp in Script.toString()
2013-12-12 08:09:15 -08:00
Mike Hearn
22a58755db
Print peer times using String.format. Resolves issue 495.
2013-12-11 19:13:46 -08:00
Mike Hearn
2f8740f8a8
Remove usage of deprecated method in PeerTest.
2013-12-11 10:39:31 -08:00
Mike Hearn
24d38cdba4
Check for and reject null event listeners.
2013-12-11 10:00:35 -08:00
Matt Corallo
2879f7bb9b
Fix memory leak of downloadListener
2013-12-11 10:00:35 -08:00
Ken Sedgwick
a0f32ab0d2
Improved comment.
2013-12-10 17:49:45 -08:00
Ken Sedgwick
e86ce7f268
Updated to latest version of BIP-0039.
2013-12-10 17:49:45 -08:00