Chrome Extension freezes PC for a few seconds when data is stored on network share

Options
Hoernsche
Hoernsche
Community Member
edited February 2013 in 1Password 4 for Windows

Hi there,

i have noticed this problem for a while now when using the chrome extension under windows. Every time I'm unlocking 1Password using the browser extension my PC freezes for up to 5 seconds. I'm not able to move the mouse or to do anything else. Any idea?

Regards
Timo

Comments

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Edit: I forgot to mention this happens using Windows7 and Windows 8. It does not always occur, but I can see it regulary.

  • Hi @Hoernsche,

    How many items do you have in your data file or even an estimate would be fine? Also, what kind of CPU spec do you have in your PC?

    Do you notice it more often when you have Chrome running all the time or do you restart Chrome often?

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Hi Mike,

    i'm having about 90 items in my data file. The extension runs on two pcs. One at home with a Intel Core2Duo E8400 running @ 3GHz and one at work with a Core i7 running @ 2.93 Ghz. I often close the Chrome window when I do not need it anymore. Another thing to mention is that at home I open the data file from a mapped network drive and at work I open it out of a True Crypt container stored on a USB stick, because DropBox is not allowed at work (I would highly appreciate a solution not based on cloud drives). To isolate the problem I moved the data files to the local disks, but that didn't do the trick. Thus, I think it must be something hidden deeper in 1password.

  • MikeT
    edited February 2013
    Options

    Hi @Hoernsche,

    A local sync is in the plans for the Windows platform, we're currently testing a possible solution on OS X and if it works well, we might be able to port it to Windows.

    Those CPUs are very quick, so it's not the computers. When you unlock the extension, your encrypted data has be transferred between both the 1Password extension and the main 1Password app over the local connection, so that it knows which items are in sync.

    There are some bugs in Chrome itself that would peg the extension to hijack the CPU for a few seconds but since you close Chrome more often, it's probably not the cause. 90 items isn't that huge of a database either.

    1. Is Chrome the only browser you have or do you have Firefox that you can try to see if it does the same thing?
    2. You said you had this problem for a while, how long is the "while" part, does this mean it was working fine a while ago and one of the updates changed it?

    Please let me know.

    Thanks!

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Hi Mike,

    1. Chrome is the only browser I use regularly. Sometimes I play around with firefox. I have never noticed the same issue in Firefox, but this might be only because I am using Chrome all the time.

    2. I can't tell you when it started, because I have set the update mechanism on the beta channel and there are so many updates from you guys. But i can tell you that a long time ago in a galaxy far far away it worked without freezing the PC :D

    Another thing as far as I remember is that Chrome is not really getting closed. I believe it is still running in the background, but I can't tell whether the plugins are kept running.

  • @Hoernsche,

    You can either kill the Chrome.exe process via Task Manager or log out and back in, which will reset the processes for Chrome. See if that makes any differences.

  • Hoernsche
    Hoernsche
    Community Member
    edited February 2013
    Options

    Hi Mike,

    i played a little bit with switching between the key files stored locally and on a samba share. Well it seems be the network connection after all. I thought I had the problem with the key file being stored locally too. It happens every time I have to unlock the extension. The network share is connected with 1GBit/s and performs very well. But i can see the data rate dropping down when transferring the 1password file, because there a so many tiny files.

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Hi again,

    isn't this considered to be a problem of 1password?

  • Hi,

    I'm sorry that I didn't get back to you sooner.

    Unfortunately, 1Password works best locally, it's not designed to use any data file from network shares nor do we recommend/support that kind of configuration. We're working on a better way to handle this in the future but right now, it's best to leave it on the local drive, not on any network shares.

    When you unlock, the app and the browser extension has to sync their data to find out the differences and merge it. In 1Password's data folder, each item is encrypted into its own file. This kind of structure makes it great for syncing tiny changes rather than the entire folder when using Dropbox to sync between your computers but for the browser and the app, that type of optimization is not available.

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Hi Mike,

    well OK I would accept a waiting time. But I think it's bad programming style to freeze everything while syncing :)

  • Hi @hoernsche,

    It's not like we intentionally want it to freeze, we know it sucks and we're trying to do everything we can to optimize our syncing process.

    It should get better over time as browsers become more optimized with their javascript engines, fixing bugs and adding more APis to the hardware acceleration.

    Hopefully, once the browsers add the cryptographic libraries APIs with hardware acceleration, it would also stop the freezing during the sync. However, we're not waiting around, we can do this two ways, find a way to optimize it and let the browser companies do their things, that way, in time, those efforts will make the extensions heavily optimized and just as good as using the native app.

  • Hoernsche
    Hoernsche
    Community Member
    Options

    Hi Mike,

    well I believe you don't want to lock up the whole system. Nevertheless it happens. As I am not into the development of browser extension I hesitate to make a too quick judgement about coding quality. However I don't believe hardware acceleration support is the only problem. I guess threading and synchronization issues are the main problem here. I do not know the possibilites for these mechanisms of javascript and all that stuff being used to develop browser extensions. Could you clarify this to help me understanding the problem you have?

  • Hi @Hoernsche,

    You can get a sense of how it is built by reading/skimming through Google's extension guide.

    We add solid crypto Javascript libraries that handles certain jobs such as encrypting/decrypting, we then use web sockets to establish a local connection to our 1Password helper, which syncs your encrypted data in both ways and we then provide CSS, html templates for the browser to render as an extension to your eyes.

    All of that are occurring in the same thread for the extension, multi-threading is not yet supported for javascript extensions. All of these websocket and crypto libraries are initialized as soon as you unlock your extension, when then brings in your data to do a diff compare to make sure both side has the same database.

    Multi-threading support are something browsers are working on, they're heading toward an implementation called HTML5 web workers but there's no widespread support just yet. You can learn more in this guide.

    Since there is no multi-threading, at least the hardware acceleration will speed up the certain libraries, so that it doesn't lock up the extension longer.

    There are a few things we can do to reduce the number of heavy method calls but that's going to take time to implement as they are radical changes that requires a lot of time and testing before we can release it.

    Hopefully, those links will help. Let me know if you have more questions.

  • anon100
    anon100
    Community Member
    Options

    This issue occurs in Firefox as well. I've uninstalled the browser plugins for the time being since I've recently started experiencing a lot of hangs. Previously 1Password was the only application on my computer that caused hangs.

  • Megan
    Megan
    1Password Alumni
    Options

    Hi @anon100,

    I'd love a bit more information on your situation here. Is your data stored on a network as well?

  • jakehertenstein
    jakehertenstein
    Community Member
    Options

    I am having the same issue frequently. My data file is stored locally in a Dropbox folder.

  • ragu
    ragu
    Community Member
    edited January 2014
    Options

    I am having the same issue frequently. My data file is stored locally in a Dropbox folder.

    Does it get deleted on cloud?

  • DBrown
    DBrown
    1Password Alumni
    Options

    jakehertenstein and ragu, what versions of which browsers are you using?

    ragu, I'm not sure I understand what you're asking ("Does it get deleted on cloud?"). Can you provide a little more information to help me? Thanks!

  • RBeeman
    RBeeman
    Community Member
    edited January 2014
    Options

    I have this issue for quite awhile as well. My data is stored locally in Dropbox. This is in Chrome Version 32.0.1700.76 m (and for several previous versions). 1Password extension is 3.9.21.90. Windows 7 64-bit.

  • DBrown
    DBrown
    1Password Alumni
    Options

    @RBeeman, is the issue simply that the computer "freezes" for a few seconds when you first launch Chrome?

    If so, is there any difference if you remove the 1Password extension from Chrome?

  • nonagon
    nonagon
    Community Member
    Options

    Hi everyone, I'm seeing these issue too. My 1Password data is stored locally in a dropbox folder, and I'm using Chrome 34.0.1847.116 on Windows 7. The fact that the mouse is freezing makes me think it's something more than just a burst of CPU, disk or network activity. Is there anything happening during the sync'ing process that interacts in a special way with the Windows kernel? It seems like interrupts are blocked or something like that.

  • svondutch
    svondutch
    1Password Alumni
    Options

    @nonagon Please sign up for the 1Password 4 beta here: https://agilebits.com/beta_signups/winnewsletter.html

  • kcarbone927
    kcarbone927
    Community Member
    Options

    I've had this same issue ever since I installed 1P on Windows a few months ago. It has worked flawlessly on my Mac.

    Windows 7 x64- 16GB of ram, core i7 and a Samsung SSD. I have my 1P data synced with a dropbox folder and have about ~120 saved items. Using 1Password 3.9.20 plugin on Firefox 29 and Chrome 34.

    Every time I unlock my vault (from the browser) it blocks the main thread and everything freezes (can't even move the mouse) for ~2 seconds. I understand that you must decrypt the data first but I have to agree with Hoernsche- you should be able to do this without blocking the main thread. Perhaps using a binary (C++) extension instead of pure javascript? I understand that's not always feasible and I'm by no means an expert on how your system works, I just thought you should know it's creating a poor user experience in what would otherwise be a stellar piece of software. I'm a big fan of 1Password for Mac and I hope you can find a workaround.

  • DBrown
    DBrown
    1Password Alumni
    Options

    @kcarbone927‌, I'd make the same suggestion that @svondutch‌ makes above, which is that you consider joining the thousands of people already working with 1Password 4 for Windows by signing up for the beta program here: https://agilebits.com/beta_signups/winnewsletter.html

    Please let us know in the 1Password 4 for Windows forum if you still see the same kind of delay.

  • kcarbone927
    kcarbone927
    Community Member
    Options

    Ah, much better, thanks! Looks like Version 4 integrates right with the 1Password manager which is awesome. Still a little rough around the edges (beta software I know) but it's much faster than the old solution!

  • Just wait what we still have in store for the beta :)

    (I know, I'm a tease.)

This discussion has been closed.