firoorg / firo

The privacy-focused cryptocurrency
https://firo.org
MIT License
720 stars 354 forks source link

FIRO UI on Linux is hanging #1418

Open skironDotNet opened 8 months ago

skironDotNet commented 8 months ago

This never happened on previous versions, now if you click "Hide" on the very first screen you get this

firo not responding

on linux

firstcryptoman commented 8 months ago

@skironDotNet Could you please provide more details to help us address the problem? Specifically, we would appreciate if you could share:

  1. What operating system and version are you using?
  2. Can you outline the steps that you took leading up to when the issue occurred, starting from the moment you open the application?
  3. Does the issue occur every time you follow these steps, or is it intermittent?
  4. Have you noticed if performing any specific action or series of actions in the app triggers the problem? Any additional details about your usage context or system configuration would also be helpful.
skironDotNet commented 8 months ago

1. Distributor ID: Linuxmint Description: Linux Mint 21.3 Release: 21.3 Codename: virginia

Cinnamon GUI

  1. I start the QT and it loads chain ok, then this screen with overlay shows up. (I'll update with pictures later) when trying to click hide there is no response from UI, like syncing occurs on the same thread, while UI thread should be separate from syncing thread.

  2. everytime, but intermittent is the linux popup saying firo not responding. It happens only during the sync. I think it has been reported back to me elsewhere that not having converted coins to spark from lelentus but I did and it still does it. I'm going to report back with empty wallet, I have quite a balance (don't want to mention publicly exact details) so maybe it causes the problem, but give me time to wait so I can get blockchain behind 24-48h

  3. It all happened after you released a new version, the UI dropdowns are completely off, I think it has been reported

Screenshot from 2024-03-28 18-18-56

justanwar commented 7 months ago

@skironDotNet Could you try reproducing this issue again with the latest master commit?

skironDotNet commented 7 months ago

Allow me some time to test...

erciccione commented 7 months ago

@skironDotNet any luck?

skironDotNet commented 6 months ago

compiled from master f55383c14dc397fdbce56aa12a4947fb60c55de7 having 6 days behind, everything was smooth, could switch tabs before hiding overlay, could hide overlay, drop-downs are ok, Everything was smooth until 24h left, then it started to freeze, hanging, being unresponsive, finally after it since, everything was fine again, something about those 24. I'll post the logs next time

skironDotNet commented 6 months ago

When starting Firo with chain synced under 24h like let say "15h left (or behind)" clicking Hide on the overlay does nothing. I don't recall ever such behavior on previous versions. It all started with spark. Once synced everything seems to be working fine, must be something about a thread checking chain vs wallet inputs. I can try to run it over and under 24h on a empty wallet and see it this affect anything.

erciccione commented 6 months ago

clicking Hide on the overlay does nothing

This is a known issue (https://github.com/firoorg/firo/issues/1391).

About the problem you are having. You say everything was smooth until 24 hours left for syncing. Are you sure this is not a local problem related to memory or other programs running?

skironDotNet commented 6 months ago

I realized I need take a snapshot of the chain, to restore it for each test, otherwise must wait 24h+ to keep testing :)

It must be related to inputs/transactions in the wallet because when tried on empty wallet it worked OK either way but I did spot the reason for 24h mark. Here is the empty wallet. The sync stopped for a second or 2 and then ran ok, I was able to hide the overlay on either before and after 24h firo spark

Tried again with my wallet, and surprised having 2days, left waited to 24h clicked hide, and it went fine, but everytime I clicked around on menu tabs, the output log was paused with each click. So using this picture more or less, those batches of the log were output fluently as groups (I'm trying to describe what I see in terminal not how this are programmed) but when clicked on the UI, those groups we output with a pause after each click.

firo 2

Tried again and, clicking around before Spark batch verification started. everything OK with UI, getting constant logs. When clicking around after Spark, it feels like threads locks accumulate, with each click there were more delay in log output after each click until the UI froze

firo 3

Clicking around after sync completed (and or Spark batch verification) does not affect the UI

skironDotNet commented 6 months ago

You need to consider also inputs in the wallet, so a test case is while I restored chain snapshot to let FIRO sync from past 2 days, my wallet state was changed after first sync. I didn't restore wallet file. So need to consider a cumulative reason: chain state (unfinished sync) + spark verification + wallet inputs/transactions + UI threads. All together may create those hard to capture issues.

erciccione commented 6 months ago

I am also seeing firo-qt hanging several times, to the point of freezing, when syncing is about to be completed.