3
0
mirror of https://github.com/Qortal/altcoinj.git synced 2025-01-31 15:22:16 +00:00
Commit Graph

1532 Commits

Author SHA1 Message Date
Mike Hearn
51c0f283e2 PaymentSession: javadoc formatting. 2014-02-21 17:27:35 +05:30
Andreas Schildbach
e7ea8483e4 Add method to clean up the wallet.
Currently, it just removes risky pending transaction from the wallet and only if their outputs have not been spent. Includes unit-tests by Miron Cuperman.
2014-02-20 22:19:17 +01:00
Matt Corallo
af1fdd4a14 Add isStandard risk analysis.
This is currently only to deal with recent spam, especially dust sybil spam. Includes an unit-test by Andreas Schildbach.
2014-02-20 22:19:17 +01:00
Matt Corallo
52df132a9d Merge pull request #11 from schildbach/refactor-signum
Use BigInteger.signum() rather than .compareTo(ZERO)
2014-02-15 09:10:37 +00:00
Andreas Schildbach
5ca6f13195 Replace usage of BigInteger.compareTo(BigInteger.ZERO) with BigInteger.signum() as it's easier to read and more performant. Passes all unit tests. 2014-02-08 15:00:43 +01:00
Mike Hearn
3c86785a89 Payment protocol: Expose a friendly/display name for validating CA 2014-02-07 18:12:18 +01:00
Mike Hearn
053a0bead6 Add Andreas and Eric to the AUTHORS file. Update my email address. 2014-02-07 17:22:17 +01:00
Erik Tierney
59a18ab43f Add ability to optionally use a schema name in the Postgres block store.
Add a test to make sure things work when we set a schema name.
2014-02-07 17:21:26 +01:00
Erik Tierney
c95a864831 Add ctor that takes a connectionUrl instead of hostname and database name.
Avoid exception in close() - only rollback when autocommit is false.
2014-02-07 17:21:26 +01:00
Andreas Schildbach
417c81f54d Use Guavas primitive compare methods, where appropriate. Makes the code easier to read. Passes all unit tests. 2014-02-06 16:28:55 +01:00
Mike Hearn
5f9df48aaa Rename and make the comparators public, documented. 2014-02-06 12:23:37 +01:00
Andreas Schildbach
217da6912d When printing the wallet, apply a sensible order to transaction pools. Again, it helps debugging of wallet problems. 2014-02-06 11:57:59 +01:00
Andreas Schildbach
47c332eb98 Move pending transactions to the top of a wallet printout. It helps debugging, as pending transactions happen to attract most problems. 2014-02-06 11:34:20 +01:00
Mike Hearn
5b74ea5c7b Switch to version 0.12-SNAPSHOT. To the moon! ;) 2014-02-04 11:31:42 +01:00
Mike Hearn
17d52aa404 Fix Maven enforcer hashes. 2014-02-04 11:31:42 +01:00
Mike Hearn
6958ad94f7 WalletTool tweaks. 2014-02-03 16:32:45 +01:00
Mike Hearn
04e7551e99 Move stuff around in the POMs as part of preparing for Maven Central. 2014-02-03 15:42:53 +01:00
Mike Hearn
f4def39f40 H2 is now being exercised more thoroughly and was leaving test db files hanging around that would cause the next run to fail, fix.
Rename method/clean up a bit.
2014-01-31 18:49:58 +01:00
Mike Hearn
f46dc809e4 Add a string c'tor to PaymentRequestException.InvalidPaymentURL 2014-01-31 16:01:00 +01:00
Mike Hearn
cf34fc2815 Add Alex and Kevin to the AUTHORS file. 2014-01-31 14:25:51 +01:00
Alex Taylor
c10e029384 Postgres block store, with ability to calculate address balances. 2014-01-31 14:23:40 +01:00
Mike Hearn
00ca0cea0c PeerGroup: pin TransactionBroadcasts from the peer group to avoid premature garbage collection when user code throws away the broadcast future.
Should resolve an issue Ken is having with flaky key sweeping.
2014-01-30 17:46:55 +01:00
Mike Hearn
fff5af29ff Recalculate but don't rebroadcast bloom filters when a p2pubkey output is received.
Resolves issue 513.
2014-01-30 17:43:33 +01:00
Mike Hearn
9204c13233 Move min version for NotFoundMessage to a static member of that class. 2014-01-30 17:18:30 +01:00
Mike Hearn
7c9651a801 Payment protocol: fix broken reflection code for Android. 2014-01-30 15:32:17 +01:00
Mike Hearn
b3bf4aadb7 Payment protocol: re-organise code a bit to handle Android devices that have the javax property set. 2014-01-30 14:40:44 +01:00
Mike Hearn
f94c41e5b6 PeerGroupTest: Clear some minor static analysis warnings. 2014-01-30 14:13:07 +01:00
Mike Hearn
b5127f4414 Make change selectable in regtest mode even if there is only one peer. 2014-01-30 11:23:10 +01:00
Matt Corallo
28b24d0eaa Fix yet another throw-vs-return but in CHECKSIG (resolves #514) 2014-01-30 03:49:37 -05:00
Mike Hearn
a1562836be Payment protocol: Make PaymentSession use a global thread pool that uses daemon threads.
Fixes a 60 second hang that could occur in wallet-tool once the send request was processed. Fixing this revealed another bug - WalletTool was depending on this VM shutdown delay caused by the worker pool timeout, so clean up the code and replace with a blocking get of the future.

Also support the --offline and --password flags when using the payment protocol.
2014-01-28 13:58:08 +01:00
Mike Hearn
ddec4f9106 Allow Bitcoin URI's that don't have any address component if the r= payment protocol param is there. 2014-01-28 13:04:09 +01:00
Kevin Greene
3966875e8e Adding support for processing PaymentRequests. 2014-01-28 09:46:51 +01:00
Simon de la Rouviere
4ca476ff35 When throwing InsufficientMoneyException, the amount of satoshis missing is required. When the server requests too much value, it is stored so that implementations of the client has access to it. 2014-01-25 18:14:06 +01:00
Matt Corallo
bd5c4e73e7 Prevent memory blowup on orphan storage 2014-01-23 10:37:47 +00:00
Ken Sedgwick
1a3c3be665 BIP-0039 multiple version support. 2014-01-19 09:46:47 +01:00
Mike Hearn
654543bb2b BlockingClient: some fixes for Orchid 2014-01-15 23:16:04 +01:00
Mike Hearn
ae1e3691f5 WalletAppKit: Allow subclasses to fiddle with some more stuff.
This isn't really a stable or supportable API, but bitcoinj does not have a stable API, so live and let live.
2014-01-15 21:26:53 +01:00
Mike Hearn
80d4840199 Threading: prefer OOM to deadlock when the user thread is saturated, but keep the warning. 2014-01-15 17:56:10 +01:00
Mike Hearn
a9a7dd9e06 Lower the priority of the networking thread to avoid competing with UI threads. 2014-01-15 15:11:31 +01:00
Mike Hearn
8e58839d81 Wallet: Short-circuit runnable creation if executor is SAME_THREAD 2014-01-15 01:56:07 +01:00
Mike Hearn
b8a1976422 Fix an edge case bug I just introduced a few minutes ago with the txConfidenceListener changes, and document. 2014-01-14 19:24:49 +01:00
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