-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Recovery from seed becomes significantly slow after a while, until a restart to the App #4807
Comments
@oscarguindzberg Is this an expected behavior? |
@m52go didn't you have this issue before segwit was added? |
I did, and it fixed itself...I don't recall doing anything differently. |
It would be good to know whether this problem existed in 1.3.9 already. If anyone wants to try that out, I would suggest starting in parallel 2 bisq instances (one running 1.3.9 and the other running 1.4.2) on the same computer and running the recover from seed (use the same seed with the same creation date) on both instances at the same time. Things to look at are how long they take to complete and how much cpu/ram they use. |
I have performed the simultaneous sync test: v1.3.7 synced from seed in just under 1 hour. v1.5.0 slowed down after 20%, its log status messages said "not stalled", after an hour they said "stall disabled", at this point it was showing 50% complete and receiving 1 block per 10 seconds. I stopped and restarted it, and it picked up speed again. At this point I restarted 1.3.7 syncing fresh from seed again - it completed in 35 minutes while v1.5.0 still remained syncing, reporting "stall disabled" and receiving 1 block per 10 seconds. [edit] The wallet start date used for syncing was 1/1/2020. |
Ran the same simultaneous sync with v1.4.2:
v1.3.7: |
@jmacxx
thanks |
Some observations from watching the logs side-by-side:
|
Do you get the same problem if you use a random seed with no txs associated
to it and the same creation date?
…On Thu, Nov 19, 2020, 9:47 PM James Cox ***@***.***> wrote:
- The wallet contains about 200 transactions.
- Comparing 1.3.9 vs 1.4.2 right now, they have not finished but I'm
certain from watching the progress that it will be the same result as above
with 1.3.7 vs 1.4.2. (Already 1.3.9 is 2x the progress of 1.4.2 after 30
minutes).
- Yes, using all the defaults, out of the box fresh data directory
installs of bisq.
- The problem is synchronizing the bitcoin blockchain.
Some observations from watching the logs side-by-side:
- 1.3.9 does its 3 allotment of stall disconnects in the first couple
of minutes.
- 1.4.2 starts off fast but soon the number of blocks received per
second drops to a crawl -- however it does not stall/disconnect quickly
like 1.3.9 does.
- 1.3.9 seems to maintain a steady throughput of 20 blocks per sec
quite consistently.
- 1.4.2 slows to a crawl reporting 0 blocks per sec consistently,
occasionally 1 block per sec.
- 1.3.9 stall threshold = 1.56 KB/sec
- 1.4.2 stall threshold = 0.78 KB/sec
- Not a memory or CPU issue, its something like a timing issue to do
with the way the requests are being made seems to cause the bitcoin nodes
to be non-cooperative. That's my hunch. Throttling as @cbeams
<https://github.com/cbeams> mentions here
<#4778>.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#4807 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAIXSLDPTUZ7UANVNNWXGPLSQW4AZANCNFSM4TVUCIGQ>
.
|
Yes. Random seed: 1.3.9 completed in 37 minutes. 1.4.2 only at 38% after 1 hour. |
Addressing @jmacxx's hunch, I have also been thinking in this direction, perhaps there was an overload on the connected peers, and they refuse the connection, but the displayed number of connected peers was stable. I had a look at the log files, and I see a lot of conflict messages: I don't a different Bisq version to check this out, but it is worth checking whether this is the source of the problem.
I have the log files and I currently try to examine this issue. I reported earlier that several times I restarted the App during the recovery process, though this does not seem to be the case here (seen from the log timestamps), in particular because the issue seems to be in reading values from a single tx, not an accumulated values across time. For privacy concerns, I will (try to) do some research on my own. Would be good to know if you would like to have details under this issue, or to open a new issue. |
@jmacxx thanks for the info. I will try a few things on my side and I will post here when I have news. |
I dug a bit deeper into my logs. I see the log output: followed by several of these: [Note the block height, 656745, which seems to be the actual tip at the time of the recovery, while the syncing process is at block height 621705, as I see the message: Afterwards, I see plenty of these: In between, this kind of messages also appear several times: And finally it progresses into the next block: Note how long - 8 seconds - it is stuck on one block, with height 621705. I have seen this behavior at least at 3 different times in my logs -- for all of them, my wallet actually had a transaction in the following block; in the above example I have an outgoing tx in block height 621706. Since we see the same issue with wallets with no transactions, it won't explain the entire behaviour, but it may explain some. |
@jmacxx @Drazen-V could you share with me the logs of 1.4.2 where sync gets too slow?
|
Emailed it to you. |
I found something. Created an issue on bitcoinj upstream bitcoinj/bitcoinj#2069 |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed because of inactivity. Feel free to reopen it if you think it is still relevant. |
Description
In the last couple of days I recovered my wallet from seed on two different computers, one running Ubuntu the other Win 10. Recovery starting date set to early-mid June 2019. The recovery starts quite fast for about the first 20%, then a small degradation of the syncing/recovery process begins. When the recovery percentage bar (equivalently the number of verified blocks) gets to 70-85% it becomes super slow.
A restart to the app makes the recovery process super fast again, though degradation also happens (and quite quickly after the restart; at one occasion I had to restart it twice during the same recovery process). I am not sure if the App is designed to support restarts, but it seems to work smoothly.
Version
V 1.4..2
Steps to reproduce
Choose recover wallet from seed, set date to early 2019, and wait...
Expected behaviour
The App should run the recovery process at the same pace (from a certain block height), or at least the pace that it gets to after a restart.
Actual behaviour
The recovery process degrades with time.
Device or machine
Win 10 and Ubuntu 20
The text was updated successfully, but these errors were encountered: