3box / 3box-js

3Box JavaScript SDK: User identities, storage, messaging
MIT License
207 stars 65 forks source link

Error Opening 3Box Space: "OpenError: A mutation operation was attempted on a database that did not allow mutations" #611

Open polluterofminds opened 5 years ago

polluterofminds commented 5 years ago

Describe the bug I created a space in one browser, then I logged in using another browser and tried to access that space. I got the following error:

"OpenError: A mutation operation was attempted on a database that did not allow mutations"

It's worth noting that the space.syncDone promise never resolves. @oed said this might be a bug, but I haven't had a chance to open its own dedicated issue.

Another note: this could be caused by trying to access a space from a private browser, maybe?

To Reproduce Steps to reproduce the behavior:

  1. Open Box with Ethereum account
  2. Open space
  3. Store some data to said space
  4. Use a private browser and Open Box with same Ethereum account.
  5. Try to open the same space, error should be thrown.

Expected behavior A user should be able to sign in and access a space from any browser or device.

Desktop (please complete the following information):

oed commented 5 years ago

Hey @jehunter5811 thanks for reporting! Can you provide some more information? In particular I'm wondering what wallet your are using. Is this using MetaMask in firefox or something different?

polluterofminds commented 5 years ago

Sorry for the delay in getting back to you @oed. I'm using a custom, custodial wallet (SimpleID). Do you think that's the problem?

oed commented 5 years ago

@jehunter5811 it shouldn't be a problem as long as it conforms to the standard ethereum rpc-provider api. It could have something to do with permissions in the private tab and localstorage/indexedDB perhaps though.

miguelmota commented 4 years ago

Seeing this issue too on Firefox when calling Box.openBox(). Brave with shields enabled doesn't seem to work either so it might be a cross-site storage issue.