IndexedDB: Reduce nested key depth threshold, re-enable flaky test
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Nov 2011 22:21:50 +0000 (22:21 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Nov 2011 22:21:50 +0000 (22:21 +0000)
https://bugs.webkit.org/show_bug.cgi?id=72529

Patch by Joshua Bell <jsbell@chromium.org> on 2011-11-16
Reviewed by Adam Barth.

Source/WebCore:

Drop maximum array key depth from 20k to 2k.

* bindings/v8/IDBBindingUtilities.cpp:

LayoutTests:

Re-enable flaky test, and drop the maximum depth tested to avoid
crashes/timeouts on test boxes when prepping the test.

* platform/chromium/test_expectations.txt:
* storage/indexeddb/key-type-array-expected.txt:
* storage/indexeddb/key-type-array.html:

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

LayoutTests/ChangeLog
LayoutTests/platform/chromium/test_expectations.txt
LayoutTests/storage/indexeddb/key-type-array-expected.txt
LayoutTests/storage/indexeddb/key-type-array.html
Source/WebCore/ChangeLog
Source/WebCore/bindings/v8/IDBBindingUtilities.cpp

index 2fc5630e702371360526c29d99a76d8747ef8bd9..3cfdb524794beb11ea026bbcff1f119f8b2badd9 100644 (file)
@@ -1,3 +1,17 @@
+2011-11-16  Joshua Bell  <jsbell@chromium.org>
+
+        IndexedDB: Reduce nested key depth threshold, re-enable flaky test
+        https://bugs.webkit.org/show_bug.cgi?id=72529
+
+        Reviewed by Adam Barth.
+
+        Re-enable flaky test, and drop the maximum depth tested to avoid
+        crashes/timeouts on test boxes when prepping the test.
+
+        * platform/chromium/test_expectations.txt:
+        * storage/indexeddb/key-type-array-expected.txt:
+        * storage/indexeddb/key-type-array.html:
+
 2011-11-16  Nate Chapin  <japhet@chromium.org>
 
         Remove CRASH expectation for
index d36c65150178bd47843c15fdf9c12460f2a281f3..05ce06dc28117d891530493bbfee324779ac1d1e 100644 (file)
@@ -3832,8 +3832,6 @@ BUGWK65939 : svg/custom/getBBox-path.svg = TEXT
 BUGWK71830 : svg/zoom/page/zoom-svg-as-relative-image.html = IMAGE
 BUGWK71830 WIN MAC : svg/zoom/page/relative-sized-document-scrollbars.svg = IMAGE+TEXT
 
-BUG_OJAN : storage/indexeddb/key-type-array.html = TIMEOUT CRASH
-
 BUGWK72037 : storage/indexeddb/factory-deletedatabase-interactions.html = TEXT TIMEOUT PASS
 
 BUGRICOW : fast/js/array-functions-non-arrays.html = TEXT
index b92d088ff23df019df573c33e8e509af97911673..dab19feb0be43763eea7686d0be0e59df1c2d1fb 100644 (file)
@@ -256,11 +256,9 @@ Expecting exception from store.put('value', Array(1000));
 PASS Exception was thrown.
 PASS code is IDBDatabaseException.DATA_ERR
 
-PASS indexedDB.cmp(makeArrayOfDepth(5), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(50), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(500), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(5000), 0) is 1
-Expecting exception from indexedDB.cmp(makeArrayOfDepth(50000), 0)
+PASS indexedDB.cmp(makeArrayOfDepth(25), 0) is 1
+PASS indexedDB.cmp(makeArrayOfDepth(250), 0) is 1
+Expecting exception from indexedDB.cmp(makeArrayOfDepth(2500), 0)
 PASS Exception was thrown.
 PASS code is IDBDatabaseException.DATA_ERR
 
index 0e5451a753adeab9cb3cedc8caa9a7b3ae520f1f..52bd0dab9c7fd2b6ad06f606a095ad616bb0ec99 100644 (file)
@@ -189,21 +189,18 @@ function testInvalidArrayKeys()
 
 function makeArrayOfDepth(n)
 {
-    var array = [], current = array;
+    var array = [];
     while (--n) {
-        current.push([]);
-        current = current[0];
+        array = [array];
     }
     return array;
 }
 
 function testDepthLimits()
 {
-    shouldBe("indexedDB.cmp(makeArrayOfDepth(5), 0)", "1");
-    shouldBe("indexedDB.cmp(makeArrayOfDepth(50), 0)", "1");
-    shouldBe("indexedDB.cmp(makeArrayOfDepth(500), 0)", "1");
-    shouldBe("indexedDB.cmp(makeArrayOfDepth(5000), 0)", "1");
-    evalAndExpectException("indexedDB.cmp(makeArrayOfDepth(50000), 0)", "IDBDatabaseException.DATA_ERR");
+    shouldBe("indexedDB.cmp(makeArrayOfDepth(25), 0)", "1");
+    shouldBe("indexedDB.cmp(makeArrayOfDepth(250), 0)", "1");
+    evalAndExpectException("indexedDB.cmp(makeArrayOfDepth(2500), 0)", "IDBDatabaseException.DATA_ERR");
     debug("");
 
     done();
index 073820c17fc0b3f05f45b16eaed63bea044bf6d5..d28d9ca659ca0818281a8b3ea0cbdaae6f036ac5 100644 (file)
@@ -1,3 +1,14 @@
+2011-11-16  Joshua Bell  <jsbell@chromium.org>
+
+        IndexedDB: Reduce nested key depth threshold, re-enable flaky test
+        https://bugs.webkit.org/show_bug.cgi?id=72529
+
+        Reviewed by Adam Barth.
+
+        Drop maximum array key depth from 20k to 2k.
+
+        * bindings/v8/IDBBindingUtilities.cpp:
+
 2011-11-16  Nate Chapin  <japhet@chromium.org>
 
         Fix incorrect multipart handling in r100311.
index 4539ec84cd93ad7b0c63e872c187383d11415c8f..dba15e37fafb149cb97f2e9ea88c9c0a61d6c9ce 100644 (file)
@@ -38,7 +38,7 @@
 
 namespace WebCore {
 
-static const size_t maximumDepth = 20000;
+static const size_t maximumDepth = 2000;
 
 static PassRefPtr<IDBKey> createIDBKeyFromValue(v8::Handle<v8::Value> value, Vector<v8::Handle<v8::Array> >& stack)
 {