This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Possible incompliances with the indexedDB Spec

  • 2 பதிலளிப்புகள்
  • 0 இந்த பிரச்னைகள் உள்ளது
  • 1 view
  • Last reply by cor-el

I was working in a project where I use the indexedDB API to store the state of some process on the client side until the app could connect to the server. The state of the process is represented by an instance of Object with a heavy nested structure (usually of 4 to 5 layers: some properties of the object instance were arrays of other objects who has more arrays within). The process is being stored in its own ObjectStore with a key path linked to a property of the first layer of the object instance (an uid) and I'm using a put request to update the stored object as the process advances. The problem is that, when the process starts I can store it without any problem and even I can update it as it grows, but when it becomes big enough something goes worng. The put request still is being completed without error events and even the success event is fired but the API stores not an instance of Object but instead of Array (more precisely an array of strings that joined are some kind serialization of the object instance) and with that I can not access to the data of my process reliably.

More important than my description of what is happening in firefox is the observation that in the chromium based browsers this is not happening and my code works as expected and I could maintain the process state as my app runs.

I was working in a project where I use the indexedDB API to store the state of some process on the client side until the app could connect to the server. The state of the process is represented by an instance of Object with a heavy nested structure (usually of 4 to 5 layers: some properties of the object instance were arrays of other objects who has more arrays within). The process is being stored in its own ObjectStore with a key path linked to a property of the first layer of the object instance (an uid) and I'm using a put request to update the stored object as the process advances. The problem is that, when the process starts I can store it without any problem and even I can update it as it grows, but when it becomes big enough something goes worng. The put request still is being completed without error events and even the success event is fired but the API stores not an instance of Object but instead of Array (more precisely an array of strings that joined are some kind serialization of the object instance) and with that I can not access to the data of my process reliably. More important than my description of what is happening in firefox is the observation that in the chromium based browsers this is not happening and my code works as expected and I could maintain the process state as my app runs.
Attached screenshots

All Replies (2)

I forgot to say that I'm in local and I have plenty of quota. So this is not related to a QuotaExceededError but rather it seems to be a problem with the size of the value of the record that i'm attempting to put in the object store

Try to ask advice on a web development oriented forum.