Skip to content
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

New version of metamask is super slow #6017

Closed
bitcoinwarrior1 opened this issue Jan 13, 2019 · 36 comments
Closed

New version of metamask is super slow #6017

bitcoinwarrior1 opened this issue Jan 13, 2019 · 36 comments
Labels
area-performance Issues relating to slowness of app, cpu usage, and/or blank screens. needs-information Needs additional information from the user who reported the issue needs-reproduction needs-triage Sev2-normal Normal severity; minor loss of service or inconvenience. type-bug

Comments

@bitcoinwarrior1
Copy link

bitcoinwarrior1 commented Jan 13, 2019

I have reinstalled multiple times and each time it is so slow, this is in contrast to previous versions

Chrome version: 71.0.3578.98 (Official Build) (64-bit)

Metamask version: 5.3.0

screen shot 2019-01-14 at 11 23 01 am

screen shot 2019-01-14 at 11 23 39 am

@danfinlay
Copy link
Contributor

One reason the new interface appears slower than the old one is that we've preserved the ability to switch back, ie the "new interface" includes both, so you're loading two interfaces.

When we remove the old UI, this process should speed up some.

Another way we plan to speed this up is to make confirmation windows not load the entire app, but to simply load the UI required for the confirmation itself (today even our confirmations contain all our react code).

@ivnkhr
Copy link

ivnkhr commented Jan 14, 2019

One reason the new interface appears slower than the old one is that we've preserved the ability to switch back, ie the "new interface" includes both, so you're loading two interfaces.

i have pretty similar situation, but i guess its not related to loading up 2 interfaces, cause my metamask taking 15+ seconds to launch and each button interaction delayed to 3-4 seconds, so its kinda hardly usable if i want to make alot of actions on it.

@bitcoinwarrior1
Copy link
Author

@danfinlay ok but it takes a really long time, sometimes a couple minutes to load. Surely it shouldn't be that slow right?

@bdresser
Copy link
Contributor

@James-Sangalli @plrspro could you open the UI console and the background console and let us know if you see any errors?

UI console: right click on the extension, then click Inspect
Background console: go to chrome://extensions, make sure "developer mode" is turned on in the top-right, then click MetaMask's background page link

@ivnkhr
Copy link

ivnkhr commented Jan 16, 2019

Nope, nothing special in console. I can shoot a video if you want to see how it behaves.

@ivnkhr
Copy link

ivnkhr commented Jan 16, 2019

https://plrs.pro/media/metamask-ui-issue.webm
so its lagging for first 20 seconds straight (10 seconds white screen + 10 seconds ui unresponsive) and then each time iam doing any interaction on websites, its same each new popup have same issues.

@BMillman19
Copy link

I also experience this

@itamarro
Copy link

I also experience this. When inspecting I see no errors, but I do see repetitive printouts like this:

[Violation] 'setTimeout' handler took 267ms
[Violation] 'setTimeout' handler took 354ms

...

@veox
Copy link

veox commented Jan 23, 2019

Doing profiling, similar freeze-ups happen when some timer fires in background.js, and then extensions::sendRequest::108 takes 2.42 seconds.

Monitoring network when inspecting background.js, I see an awful lot of net_version JSON-RPC queries (?..), and dense (on every block, I'd guess?..) re-sending of pending transactions, requesting transactions by hash (those same ones? to check their status?..), and similar.

There's also what seems like repeated requests to an on-chain contract to get function signatures. :/

I'm not 100% sure this is related, but I think it gets more pronounced the more transactions I have in history (that MM knows about), and the more pending transactions I've got.

It's possible that the stall happens due to the extension's process taking 100% of a CPU core (saturating it), which I also observe in Chromium's "Task Manager".

FTR, I use a local node (on the same machine).

@bitcoinwarrior1
Copy link
Author

Sorry Gentlemen, I simply downgraded my version before checking the logs. Old version runs fast.

@blaaaaaaa
Copy link

same super laggy and slow, borderline unusable.

@bdresser
Copy link
Contributor

bdresser commented Jan 28, 2019

v5.3.2 is being rolled out today & tomorrow and includes a couple fixes to reduce the number of requests we're making to Infura (#6052, #6049) - once your extension updates, let us know if things improve.

@veox
Copy link

veox commented Feb 7, 2019

@bdresser I saw no improvement with v5.3.2 (or current v5.3.5).

What did help was removing MetaMask altogether, re-installing, and restoring from seed.

I also didn't import an additional account that was present previously.

@araa47
Copy link

araa47 commented Feb 15, 2019

Running MetaMask Version 6.0.1 on chrome on a mac. Having to wait about 20seconds + for it to load up. The older version was much faster. Any way to fix this issue?

@bdresser
Copy link
Contributor

bdresser commented Feb 15, 2019

@araa47 anything in your UI console or background console?

UI console: open the extension, right click, choose "inspect"
background console: head to chrome://extensions, make sure Developer Mode is "on" in top-right, click background.html on the MetaMask tile.

Also try killing the extension in Chrome Task Manager and re-starting. Last resort is to re-install as veox mentions above.

@araa47
Copy link

araa47 commented Feb 16, 2019

@bdresser was able to solve the issue by backing up my accounts, un-installing the extension and re-installing. Looking good now, thanks for the prompt response.

@nedis4
Copy link

nedis4 commented Mar 6, 2019

I have the same issue. Why did they break it? Was such a good client.

@bdresser
Copy link
Contributor

@nedis4 can you provide any useful details outlined above? and let us know if any of the fixes on this thread work for you.

@D-Nice
Copy link

D-Nice commented Apr 2, 2019

the response is generally bad, couple of seconds delay.

However, it's especially exacerbated when using a custom rpc endpoint such as https://rpc.slock.it/goerli slowing down to a multiple minute crawl, making the client practically unusuable.

@msuess
Copy link

msuess commented Apr 12, 2019

To the people that have this problem: can you confirm that this slowness goes away when you run the profiler? In the popup, click "inspect", switch to "performance" and click the record button to start profiling. Is the UI more responsive when the profiler is running?

@D-Nice
Copy link

D-Nice commented Apr 18, 2019

Not sure if there were recent updates, but it's not as bad as it used to be.

It started off quite fast, but as you continue using it slows down, but the max latency is at least 10ish seconds from what I've seen so far.

Regarding the profiler, when starting the profiler, things seemed to go fast again, but likewise as use continued it slowed down.

I have reverted to an earlier major version to circumvent this issue.

@bdresser
Copy link
Contributor

thanks for the update @D-Nice. which earlier version do you find reduces the issue?

@dkent600
Copy link

@msuess Running the profiler did immediately improve performance (which was super slow, using a lot of CPU)

@msuess
Copy link

msuess commented Apr 23, 2019

We're seeing the same issue with an extension we're developing at my company. We have yet to identify the root cause but we are seeing this behaviour with various OSX versions when the laptop is connected to an external widescreen.

@dkent600 @D-Nice Do you mind sharing OS details and what kind of screen config you are running? If you're using external screens, does disconnecting them/changing resolution help? If so, what resolution are you running and what is your exact screen setup?

@bdresser It sounds super weird but causing repaints did fix the issue for our users. Our "solution" was to insert a visible, 1x1px canvas element that we paint to using requestAnimationFrame.

This might be a Chromium bug but we're having a hard time to reproduce it.

@dkent600
Copy link

@msuess

Do you mind sharing OS details and what kind of screen config you are running? If you're using external screens, does disconnecting them/changing resolution help? If so, what resolution are you running and what is your exact screen setup?

Windows 10, 15" laptop screen, 4K resolution, landscape, 250% text scaling, no external monitor.
I didn't try changing the graphics resolution.

@D-Nice
Copy link

D-Nice commented May 9, 2019

@bdresser MetaMask 4.17.1

I haven't used any new version much recently, so can't judge improvements currently.

@D-Nice
Copy link

D-Nice commented May 31, 2019

Update on this, I have used 6.x updated version recently, albeit sparingly when compared to before, but I have not noticed any slow downs during its use now on Chrome-based browser.

@bdresser
Copy link
Contributor

bdresser commented Jun 5, 2019

Nice! Will leave this open for another month or so, and if we don't hear any more complaints I will close.

@jkr1986
Copy link

jkr1986 commented Aug 18, 2019

Still very laggy if you have alot of transactions...

@wbt
Copy link
Contributor

wbt commented Oct 25, 2019

Still having a lot of issues, as logged in #6813.

@marknl
Copy link

marknl commented Oct 30, 2019

I'm affected by a slow MM as well. I'm running on Win10 Home / Chrome 73 / MM 7.3.1
Everything the extension does is slow. Because of it, dApps cannot connect to it.

@danfinlay
Copy link
Contributor

It is possible that this is related to transaction storage, as someone has mentioned. Could someone affected by this issue try the reset account button and tell us if that improves performance for them?

@marknl
Copy link

marknl commented Oct 30, 2019

Thing is, in Brave browser, the extension is working perfectly fine. It's only in Chrome where it's not working properly.

What I did in Chrome, was export my private key, and reinstalling MM, then imported the key. This seemed to have solved the issue for me.

@wbt
Copy link
Contributor

wbt commented Nov 8, 2019

@danfinlay Without knowing for sure if I'm affected by this issue or a separate one, I did an account reset, refreshed the dapp page, and still observed #6813. Performance was not noticeably improved by having done the account reset.

@tmashuang tmashuang added needs-information Needs additional information from the user who reported the issue area-performance Issues relating to slowness of app, cpu usage, and/or blank screens. labels Nov 9, 2020
@Gudahtt Gudahtt added Sev2-normal Normal severity; minor loss of service or inconvenience. type-bug labels Jan 6, 2021
@hdadr
Copy link

hdadr commented Jan 13, 2021

One reason the new interface appears slower than the old one is that we've preserved the ability to switch back, ie the "new interface" includes both, so you're loading two interfaces.

When we remove the old UI, this process should speed up some.

Another way we plan to speed this up is to make confirmation windows not load the entire app, but to simply load the UI required for the confirmation itself (today even our confirmations contain all our react code).

Has the loading the old ui been excluded? It is pretty slow for me ~3 secs to load the ui of metamask.

@tmashuang
Copy link
Contributor

Closing in favor of #6547 and #8991. Some of OP's is no longer relevant and new information was provided in those linked issues and can help further debug the root cause.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-performance Issues relating to slowness of app, cpu usage, and/or blank screens. needs-information Needs additional information from the user who reported the issue needs-reproduction needs-triage Sev2-normal Normal severity; minor loss of service or inconvenience. type-bug
Projects
None yet
Development

No branches or pull requests