Commit Graph

27 Commits

Author SHA1 Message Date
Neil Booth 206e38fb7c Make use of trigger_callback easier to understand 2015-11-12 16:08:37 +09:00
Neil Booth 8cc3b58364 Allow syncronizer to be GC-ed
Proper fix for #1525.
Using python's GC module, I've verified that the daemon, when running,
now releases all verifiers, synchronizers and wallets - all the resources
we care about releasing.
2015-11-12 08:40:58 +09:00
ThomasV d82896dadf fix #1525 (part 2) 2015-11-06 18:00:19 +01:00
ThomasV b3529147d5 fix #1525 2015-11-06 17:32:54 +01:00
Neil Booth f5a43b8738 Warn if server is serving bad address histories 2015-09-06 19:49:35 +09:00
Neil Booth 01491dd1d0 Have network_proxy use ThreadJob framework
Rename WalletSynchronizer to Synchronizer so that diagnostic messages,
which are based on class name, still refer to Synchronizer.
2015-08-26 16:50:40 +09:00
Neil Booth a056f9804b Notify when a chunk of headers is validated
And a couple of cosmetic changes.
This should fix #1379.
2015-08-25 14:27:53 +09:00
ThomasV bfae04e6f0 Improved in network callbacks:
* Pass arguments
 * Don't redraw history when a tx is verified.
 * Fix new tx notifications.
2015-08-16 11:36:23 +02:00
ThomasV fa2de58c90 redo fixes for 1324 2015-07-02 09:22:59 +02:00
Neil Booth e8db8983ec Make the synchronizer not a thread.
The synchronizer's work is done from the network proxy's main loop.

A minor problem with the old synchronizer was that it considered itself
out of date if the network was out of date.  This was too generic: the
network can have pending requests unrelated to the synchronizer.  This
resulted in the synchronizer often unnecessarily flipping the wallet
between up-to-date and not-up-to-date, and causing unnecessary calls
to wallet.save_transactions().  This was observable when opening the
network dialog box: frequently just opening it would cause a wallet
status change and transaction flush, simply because the network dialog
sends a get_parameters() request.  This rework of the synchronizer does
not have that issue.
2015-06-09 08:41:31 +09:00
ThomasV a99c2bc9fa less verbose debug message 2015-05-05 21:00:35 +02:00
ThomasV e3de121be9 store deserialized tx in/out in wallet file for fast computation 2015-03-30 14:10:46 +02:00
ThomasV 4ebefc6e4c standardize error messages in synchronizer 2015-03-14 09:29:44 +01:00
ThomasV 8e7ce452f6 move misplaced debug message 2015-03-14 09:27:18 +01:00
ThomasV a4cb70649d fix synchronizer hanging when not connected. 2015-03-14 08:43:43 +01:00
ThomasV 72688a5cfa clean implementation of daemon threads 2015-03-13 23:04:29 +01:00
Tafelpoot d9c5250a6f removed trailing whitespace and fixed indentation in history widget 2014-10-21 19:05:51 +02:00
ThomasV 71d97eeecc shorter timeouts in synchronizer, so that it terminates properly 2014-07-29 12:23:42 +02:00
ThomasV fb0574c5a0 fix callbacks 2014-07-28 07:53:02 +02:00
ThomasV 28df27fba2 update interface.py 2014-07-28 00:13:40 +02:00
ThomasV 035ecbc7cd redo inter-thread communication using pipes 2014-07-27 17:13:46 +02:00
ThomasV 8196bc5779 adapt network dialog to daemon 2014-07-25 09:11:56 +02:00
ThomasV 09e4efc439 daemon notifications (network.status) 2014-07-24 23:17:06 +02:00
ThomasV 9ee0614edb make daemon usable with the GUI 2014-07-24 16:12:18 +02:00
ThomasV a89abee969 Rewrite accounts and transactions: store pubkeys instead of addresses in order to avoid unnecessary derivations. 2014-07-06 21:10:41 +02:00
ThomasV 38f5deee86 use an input queue in synchronizer, so that new addresses can be created from other threads 2014-06-26 17:41:09 +02:00
ThomasV 7e0711f6ec move synchronizer class in its own file. abstract wallet class. 2014-04-30 10:32:40 +02:00