Changeset 195801 in webkit
- Timestamp:
- Jan 28, 2016 10:50:40 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r195799 r195801 1 2016-01-28 Brady Eidson <beidson@apple.com> 2 3 Modern IDB: SQLite backend mismanages key generator values. 4 https://bugs.webkit.org/show_bug.cgi?id=153625 5 6 Reviewed by Andy Estes. 7 8 * platform/mac-wk1/TestExpectations: 9 1 10 2016-01-28 Joseph Pecoraro <pecoraro@apple.com> 2 11 -
trunk/LayoutTests/platform/mac-wk1/TestExpectations
r195796 r195801 257 257 crypto/subtle/rsa-indexeddb-non-exportable.html [ Failure ] 258 258 fast/history/page-cache-indexed-opened-db.html [ Failure ] 259 imported/w3c/indexeddb/idbdatabase_deleteObjectStore4-not_reused.htm [ Failure ]260 259 imported/w3c/indexeddb/idbindex-multientry-big.htm [ Failure ] 261 imported/w3c/indexeddb/keygenerator-constrainterror.htm [ Failure ]262 imported/w3c/indexeddb/keygenerator.htm [ Failure ]263 imported/w3c/indexeddb/transaction-requestqueue.htm [ Failure ]264 260 storage/indexeddb/cursor-continue-validity.html [ Failure ] 265 261 storage/indexeddb/cursor-primary-key-order.html [ Failure ] 266 262 storage/indexeddb/get-keyrange.html [ Failure ] 267 storage/indexeddb/index-duplicate-keypaths.html [ Failure ]268 storage/indexeddb/key-generator.html [ Failure ]269 263 storage/indexeddb/modern/get-keyrange.html [ Failure ] 270 264 storage/indexeddb/modern/index-3.html [ Failure ] 271 storage/indexeddb/objectstore-autoincrement.html [ Failure ]272 265 273 266 # SQLite backend tests that timeout -
trunk/Source/WebCore/ChangeLog
r195799 r195801 1 2016-01-28 Brady Eidson <beidson@apple.com> 2 3 Modern IDB: SQLite backend mismanages key generator values. 4 https://bugs.webkit.org/show_bug.cgi?id=153625 5 6 Reviewed by Andy Estes. 7 8 No new tests (Many failing tests pass, a few get closer). 9 10 There's mixed assumptions about whether the value stored is the current value or the next value. 11 12 Fixing those assumptions fixes tests. 13 14 * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp: 15 (WebCore::IDBServer::SQLiteIDBBackingStore::generateKeyNumber): Store/retrieve the correct value. 16 (WebCore::IDBServer::SQLiteIDBBackingStore::revertGeneratedKeyNumber): Ditto. 17 (WebCore::IDBServer::SQLiteIDBBackingStore::maybeUpdateKeyGeneratorNumber): Ditto. 18 1 19 2016-01-28 Joseph Pecoraro <pecoraro@apple.com> 2 20 -
trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBBackingStore.cpp
r195787 r195801 1357 1357 return error; 1358 1358 1359 if (currentValue > maxGeneratorValue)1359 if (currentValue + 1 > maxGeneratorValue) 1360 1360 return { IDBDatabaseException::ConstraintError, "Cannot generate new key value over 2^53 for object store operation" }; 1361 1361 … … 1366 1366 IDBError SQLiteIDBBackingStore::revertGeneratedKeyNumber(const IDBResourceIdentifier& transactionIdentifier, uint64_t objectStoreID, uint64_t newKeyNumber) 1367 1367 { 1368 LOG(IndexedDB, "SQLiteIDBBackingStore::revertGeneratedKeyNumber ");1368 LOG(IndexedDB, "SQLiteIDBBackingStore::revertGeneratedKeyNumber - object store %" PRIu64 ", reverted number %" PRIu64, objectStoreID, newKeyNumber); 1369 1369 1370 1370 ASSERT(m_sqliteDB); … … 1381 1381 } 1382 1382 1383 return uncheckedSetKeyGeneratorValue(objectStoreID, newKeyNumber); 1383 ASSERT(newKeyNumber); 1384 return uncheckedSetKeyGeneratorValue(objectStoreID, newKeyNumber - 1); 1384 1385 } 1385 1386 … … 1415 1416 ASSERT(newKeyInteger > uint64_t(newKeyNumber)); 1416 1417 1417 return uncheckedSetKeyGeneratorValue(objectStoreID, newKeyInteger );1418 return uncheckedSetKeyGeneratorValue(objectStoreID, newKeyInteger - 1); 1418 1419 } 1419 1420
Note: See TracChangeset
for help on using the changeset viewer.