New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 781207 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug-Regression



Sign in to add a comment

IndexedDB: data not effectively stored with 'add' / 'put'

Reported by ka.gema...@gmail.com, Nov 3 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/62.0.3202.75 Chrome/62.0.3202.75 Safari/537.36

Steps to reproduce the problem:
1. Adding a new data item in the IndexedDB store using 'add' or 'put' does not work anymore.

Can be tested @ https://googlechrome.github.io/samples/indexeddb-observers/

What is the expected behavior?
Data should be effectively stored in the database.

On successful and unsuccessful complete, an event should be fired.

What went wrong?
On using the 'add' or 'store' methods, data are not stored in the database.

Also no event is fired once the write action has completed, successful or unsuccessful.

Did this work before? Yes The previous one (from https://dl.google.com/linux/chrome/deb/)

Does this work in other browsers? Yes

Chrome version: 62.0.3202.75  Channel: stable
OS Version: Ubuntu 14.04.5 LTS
Flash Version: 

This bug does not happen on the current Android versions ( stable 61 & beta 63) and seems to be a recent one (Chrome updated some days ago).
 
Oddly enough, this bug does not happen in incognito mode.

In that case, data is correctly store in the data base and the 'oncomplete' event is fired.
Labels: Needs-Triage-M62
Cc: hdodda@chromium.org
Components: Blink>Storage>IndexedDB
Labels: Needs-Feedback
Tested the issue on ubuntu 14.04 using chrome M62 #62.0.3202.75  & M62 #62.0.3202.89 and observed similar behavior in incognito window.

Attached screencast for reference.

@ ka.gemayel-- Could you please check attached screencast and confirm us about the expected result with the screenshot and also please try in latest chrome stable , if you can still see the issue and update us with your observtions.

Thanks!


781207.ogv
3.4 MB View Download
Yes, the screenscast reflects the expected result, the count is incremented.

The bug has disappeared on 62.0.3202.89, thank you !

As a side note, seems some changes where made recently with IndexedDB events. On my side, I had to make some changes with 'get' after the upgrade to 62.0.3202.75 :

- before:

  public getItem(name, id):Promise<Object> {
    return new Promise((ok, err) => {
      const getItem = this.objectStore(name, 'readonly').get(id);
      getItem.onsuccess = ({ target: { result }}) => ok(result);
      getItem.onerror = event => err(event);
    });
  }

- after:

  public getItem(name, id):Promise<Object> {
    return new Promise((ok, err) => {
      const getItem = this.objectStore(name, 'readonly').get(id);
      getItem.oncomplete = ({ target: { result }}) => ok(result);
      getItem.onerror = event => err(event);
    });
  }

Seems some events are not fired anymore, or were not fired correctly some versions ago. Gotta revisit that part on my side, although now it works but perhaps not following the spec.

Also, if I were you I'd implement an automated IndexedDB tests suite. :)

Cheers !
Project Member

Comment 5 by sheriffbot@chromium.org, Nov 8 2017

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "hdodda@chromium.org" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Unconfirmed)

Sign in to add a comment