almindor / etherwall

Ethereum QT5 Wallet
GNU General Public License v3.0
143 stars 59 forks source link

Add server status check for thin client #48

Closed almindor closed 6 years ago

almindor commented 7 years ago

If the thin client server goes off or falls behind we should show an error, lock accounts from transaction sending and send people over to the website for explanation.

UGatgithub commented 7 years ago

Is your thin client implementation using the geth --syncmode=light command mentioned here or is that another option to run a thin client with Etherwall? My current understanding is that Etherwall uses a different approach as I can't find a folder named lightchaindata ..., or?

UGatgithub commented 7 years ago

Looks like I can run geth.exe --light in a separate cmd window (Etherwall attached to external geth) or start Etherwall with the option --syncmode=light and now the folder lightchaindata got created but at the end of the sync I get a "No suitable peers available" error which also appears when re-starting Etherwall while after some time block headers appear being added in geth log, so there seem to be some peers syncing headers. Etherwall Error: bail[hard]: no suitable peers available. Also the accounts do not show any ether in this mode and switching to Transactions view crashed Etherwall at least twice with a runtime error so I need to kill geth.exe manually via task manager.

almindor commented 7 years ago

Thin client just "removes" all chaindata required calls by calling them on a remote node that has the chain-data on the server. You can see that described in the diagram here

When it comes to the light mode on geth it's not working correctly yet. They have too many problems and almost nobody runs the light nodes needed so right now it's not usable. It also has other limitations, like not allowing contract watches currently etc.

UGatgithub commented 7 years ago

So your thin client development is currently is in front of the light mode development, that's interesting, thanks for the clarification.

almindor commented 7 years ago

I suppose you could say it like that. I made "thin client" mode when light client saw no improvements in almost a year. Decided it's time to do it the other way rather than just keep waiting until eth devs get a move on.

almindor commented 6 years ago

Server status implemented

UGatgithub commented 6 years ago

Hi almindor, above I reported some bugs when running Etherwall with geth in light mode. My experience is that Light mode works with Mist and Ethereum Wallet once it finds at least one peer which it does better the last weeks so will you pick up on this bugs?

  1. Accounts do not show any ether in light mode
  2. Switching to Transactions view crashed Etherwall with a runtime error so users need to kill geth.exe manually via task manager.