IndexedDB: database connections don't close after versionchange transaction aborts
https://bugs.webkit.org/show_bug.cgi?id=102298

Reviewed by Tony Chang.

Source/WebCore:

Per spec, close the database if the "versionchange" transaction aborts.

Tests: storage/indexeddb/aborted-versionchange-closes.html
       storage/indexeddb/lazy-index-population.html
       storage/objectstore-basics.html

* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::onAbort): Tell the IDBDatabase (connection) to close if
this was a "versionchange" transaction.

LayoutTests:

Added dedicated test, updated tests dependent on buggy behavior.

* storage/indexeddb/aborted-versionchange-closes-expected.txt: Added.
* storage/indexeddb/aborted-versionchange-closes.html: Added.
* storage/indexeddb/lazy-index-population-expected.txt:
* storage/indexeddb/lazy-index-population.html: Remove manual closing.
* storage/indexeddb/objectstore-basics-expected.txt:
* storage/indexeddb/objectstore-basics-workers-expected.txt:
* storage/indexeddb/resources/aborted-versionchange-closes.js: Added.
* storage/indexeddb/resources/objectstore-basics.js: Removed dependency on bug.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142513 268f45cc-cd09-0410-ab3c-d52691b4dbfc