SomberNight
96b699e534
synchronizer: fix refresh bug
2018-09-19 16:35:30 +02:00
SomberNight
6f0dceb152
fix #4726
...
follow-up 88fc62e8f7
2018-09-19 15:26:03 +02:00
ghost43
924ee1a672
Merge pull request #4725 from joren485/unreachable_return
...
Remove unreachable return statement
2018-09-19 13:09:49 +02:00
Joren Vrancken
ae501ca8ed
Remove unreachable return statement
2018-09-19 11:35:29 +02:00
SomberNight
adc91eb75e
interface: hostname cannot be empty
2018-09-18 20:21:10 +02:00
SomberNight
916cdebacb
network: send out update trigger when stopping/starting network
2018-09-18 19:27:33 +02:00
SomberNight
a2ed08615c
minor.. move imports out of functions
2018-09-18 18:07:12 +02:00
SomberNight
39db32c3ce
follow-up prev
2018-09-18 17:59:02 +02:00
SomberNight
af63913189
network triggers: rm 'updated'; more fine-grained instead
...
rm 'interfaces'
add 'wallet_updated', add 'network_updated'
2018-09-18 16:49:48 +02:00
SomberNight
fef15f9c02
wallet: minor opt in get_history
2018-09-18 16:41:56 +02:00
SomberNight
825d7c2cbd
interface: subscribe to headers in run_fetch_blocks
...
so that 'monitor_connection' is already running while waiting for first header
2018-09-18 15:40:32 +02:00
ThomasV
3ec0ceba3e
add option to leave daemon running after GUI is closed
2018-09-18 12:05:37 +02:00
SomberNight
67d3d6b5b5
qt: don't update tabs in ElectrumWindow.__init__ directly
2018-09-18 04:19:12 +02:00
SomberNight
01246b0d97
wallet/verifier: when adding into unverified_tx, don't remove from verifier
...
Not needed since aee2d8e120
And was never really working I guess (race..)
Also, during normal initial history sync, it caused the verifier to request
proofs multiple times.
2018-09-18 03:48:14 +02:00
SomberNight
533bd97a05
qt HistoryList.update_item: perf optimisation
2018-09-18 03:19:24 +02:00
SomberNight
c8f82c71c9
wallet: small perf optimisation in add_transaction
2018-09-18 02:14:23 +02:00
SomberNight
11bf084a1f
network triggers: 'verified' notification now includes wallet
...
this is a performance optimisation.
measurements using a large wallet with 11k txns:
syncing XPUB for the first time takes 10 seconds. leaving window open, and
syncing same XPUB again in new window takes 30 seconds. in third window,
it takes ~50 seconds. then ~70s. presumably scaling linearly.
this is due to the history_list.update_item call being CPU-heavy.
now all of them take 10 seconds.
2018-09-18 01:40:34 +02:00
SomberNight
24ec7ce6b8
qt network dialog: maybe fix refresh bug
2018-09-17 22:31:31 +02:00
SomberNight
7221fb3231
interface: further simplifications for fork resolution
2018-09-17 22:30:25 +02:00
SomberNight
b3a2bce213
interface: simplify fork resolution logic
2018-09-17 22:30:21 +02:00
SomberNight
435efb47d0
wallet: lock in get_addr_io, get_tx_delta, get_tx_value
...
probably fixes #4716
2018-09-17 18:50:47 +02:00
SomberNight
1b95cced5d
verifier: perf optimisations
...
blockchain.read_header is expensive. do cheap tests first
on a wallet with 11k txns, that is synced except for spv proofs,
finishing sync now takes 80 sec instead of 180 sec
2018-09-17 18:31:25 +02:00
SomberNight
e5e3ac0364
fix #4720
2018-09-17 14:44:01 +02:00
SomberNight
aee2d8e120
verifier: fix a race during reorgs
...
related: 41e088693d
If our guess of a txn getting confirmed at the same height in the new chain
as it was at in the old chain is incorrect, there is a race between the
verifier and the synchronizer. If the verifier wins, the exception will cause
us to disconnect.
2018-09-17 03:35:25 +02:00
SomberNight
dcab22dcc7
verifier: small clean-up
2018-09-16 22:21:49 +02:00
SomberNight
78488ebcbf
aiosafe safety belts
...
traceback.print_exc was raising, and self.exception did not got set,
and the whole trace was lost. arghhhh
2018-09-16 22:17:20 +02:00
SomberNight
4360a785ad
blockchain: blockchains_lock needed to write/iterate global dict
2018-09-16 18:26:40 +02:00
SomberNight
7dc5665ab1
interface: faster bootstrap of backwards search
2018-09-16 18:18:49 +02:00
SomberNight
4d502eb2bf
qt tx notifications: wait until sync finishes
...
Comment is no longer relevant. Also, actually it was incorrect.
Each txn is only downloaded once, though 'added' multiple times to the wallet.
The triggers are only sent out by the Synchronizer, once, when downloaded.
The actual reason for the inconsistency was that get_wallet_delta can only
give complete results once the wallet is synced.
2018-09-16 09:40:07 +02:00
SomberNight
9c919e6478
interface: fix off-by-one in request_chunk
...
was harmless; usually we just downloaded an extra individual header after the chunk
2018-09-16 09:01:53 +02:00
SomberNight
1d711eeadc
interface: split up 'step'; binary search of headers
2018-09-16 08:29:01 +02:00
SomberNight
58a5346d72
network: switch lagging interface
2018-09-16 07:59:36 +02:00
SomberNight
27e42b4826
interface: if header is on other chain already, just switch (regression)
2018-09-16 07:42:25 +02:00
SomberNight
3fc9326c43
interface: try hard not to infinite loop while getting headers
2018-09-16 07:35:11 +02:00
SomberNight
da23e71db1
interface: block header search simplifications
2018-09-16 07:34:05 +02:00
SomberNight
ab94a47b8e
network: mv request_chunk to interface
...
this is a bugfix: the old code always tried to connect the chunk to
network.blockchain(). the correct behaviour is to connect to the
blockchain of the interface.
2018-09-16 06:09:14 +02:00
SomberNight
1635bc8cb3
blockchain: use HEADER_SIZE named constant instead of magic numbers
2018-09-16 03:06:21 +02:00
SomberNight
a9197236a2
change 'new_transaction' notification to include wallet
2018-09-16 02:48:13 +02:00
SomberNight
2453872a09
synchronizer: rm redundant 'updated' notification
2018-09-16 02:31:56 +02:00
SomberNight
6f5a4a5502
fix prev: rm incorrect assert
2018-09-15 08:23:49 +02:00
SomberNight
482259df8b
interface: further clean-up in 'step'
2018-09-15 07:26:36 +02:00
SomberNight
beb37aafc5
interface: clean-up 'step'; backwards search
2018-09-15 06:44:18 +02:00
SomberNight
2a958499b6
fx: disable checking mime type in get_json
...
looking at you, CoinDesk..
2018-09-15 00:30:43 +02:00
SomberNight
f38ec93ae9
qt fx settings: restore selected exchange in combobox if list changes
2018-09-14 23:07:13 +02:00
SomberNight
6ccd83397c
fx: asyncio.Event is not thread-safe; also the 'timeout' field was removed
2018-09-14 23:01:28 +02:00
SomberNight
d1f11f5fe9
fix #4717
2018-09-14 16:12:47 +02:00
Filip Gospodinov
f05f3b430a
build-wine: fix locale path
...
`$i` already contains `locale/`.
2018-09-14 14:37:14 +02:00
Filip Gospodinov
bdecef0eaf
contrib: bump pyinstaller to 3.4
...
PyInstaller 3.4 highlights:
* patch for deterministic builds by electrum
* improved support for Qt5-based applications
* added support for Python 3.7
2018-09-14 14:29:19 +02:00
SomberNight
2bd5e0f25d
packaging: check in make_tgz if packages folder exists
...
related: #4714
2018-09-13 23:29:44 +02:00
SomberNight
2e61359d50
network: stop pending connections when stopping network
2018-09-13 21:20:55 +02:00