Backed out changeset 2e8791563f4d (bug 1309527) for Win8 timeouts in idbobjectstore-rename-store.html
authorPhil Ringnalda <philringnalda@gmail.com>
Wed, 02 Nov 2016 19:22:18 -0700
changeset 347510 f8334efe84730204eab8e6f4411d75990232f4fc
parent 347509 be398e3e2b2039ff982b747b3573ea338dbc7d45
child 347511 ce032e762e19150e79ef3e7938c86ae39a40af43
push id10298
push userraliiev@mozilla.com
push dateMon, 14 Nov 2016 12:33:03 +0000
treeherdermozilla-aurora@7e29173b1641 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1309527
milestone52.0a1
backs out2e8791563f4d6e7715674c9b53135a6a400178f2
Backed out changeset 2e8791563f4d (bug 1309527) for Win8 timeouts in idbobjectstore-rename-store.html
dom/indexedDB/ActorsParent.cpp
testing/web-platform/meta/IndexedDB/idbindex-rename.html.ini
testing/web-platform/meta/IndexedDB/idbobjectstore-rename-store.html.ini
--- a/dom/indexedDB/ActorsParent.cpp
+++ b/dom/indexedDB/ActorsParent.cpp
@@ -7910,28 +7910,26 @@ private:
   DoDatabaseWork(DatabaseConnection* aConnection) override;
 };
 
 class RenameObjectStoreOp final
   : public VersionChangeTransactionOp
 {
   friend class VersionChangeTransaction;
 
-  const int64_t mId;
-  const nsString mNewName;
+  const RefPtr<FullObjectStoreMetadata> mMetadata;
 
 private:
   // Only created by VersionChangeTransaction.
   RenameObjectStoreOp(VersionChangeTransaction* aTransaction,
                       FullObjectStoreMetadata* const aMetadata)
     : VersionChangeTransactionOp(aTransaction)
-    , mId(aMetadata->mCommonMetadata.id())
-    , mNewName(aMetadata->mCommonMetadata.name())
-  {
-    MOZ_ASSERT(mId);
+    , mMetadata(aMetadata)
+  {
+    MOZ_ASSERT(aMetadata->mCommonMetadata.id());
   }
 
   ~RenameObjectStoreOp()
   { }
 
   virtual nsresult
   DoDatabaseWork(DatabaseConnection* aConnection) override;
 };
@@ -8106,31 +8104,29 @@ private:
   DoDatabaseWork(DatabaseConnection* aConnection) override;
 };
 
 class RenameIndexOp final
   : public VersionChangeTransactionOp
 {
   friend class VersionChangeTransaction;
 
+  const RefPtr<FullIndexMetadata> mMetadata;
   const int64_t mObjectStoreId;
-  const int64_t mIndexId;
-  const nsString mNewName;
 
 private:
   // Only created by VersionChangeTransaction.
   RenameIndexOp(VersionChangeTransaction* aTransaction,
                 FullIndexMetadata* const aMetadata,
                 int64_t aObjectStoreId)
     : VersionChangeTransactionOp(aTransaction)
+    , mMetadata(aMetadata)
     , mObjectStoreId(aObjectStoreId)
-    , mIndexId(aMetadata->mCommonMetadata.id())
-    , mNewName(aMetadata->mCommonMetadata.name())
-  {
-    MOZ_ASSERT(mIndexId);
+  {
+    MOZ_ASSERT(aMetadata->mCommonMetadata.id());
   }
 
   ~RenameIndexOp()
   { }
 
   virtual nsresult
   DoDatabaseWork(DatabaseConnection* aConnection) override;
 };
@@ -24395,20 +24391,22 @@ RenameObjectStoreOp::DoDatabaseWork(Data
       aConnection->GetCachedStatement(NS_LITERAL_CSTRING(
         "SELECT name "
           "FROM object_store "
           "WHERE name = :name "
           "AND id != :id;"),
         &stmt));
 
     MOZ_ALWAYS_SUCCEEDS(
-      stmt->BindStringByName(NS_LITERAL_CSTRING("name"), mNewName));
+      stmt->BindStringByName(NS_LITERAL_CSTRING("name"),
+                             mMetadata->mCommonMetadata.name()));
 
     MOZ_ALWAYS_SUCCEEDS(
-      stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"), mId));
+      stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"),
+                            mMetadata->mCommonMetadata.id()));
 
     bool hasResult;
     MOZ_ALWAYS_SUCCEEDS(stmt->ExecuteStep(&hasResult));
     MOZ_ASSERT(!hasResult);
   }
 #endif
 
   DatabaseConnection::AutoSavepoint autoSave;
@@ -24422,23 +24420,25 @@ RenameObjectStoreOp::DoDatabaseWork(Data
     "UPDATE object_store "
       "SET name = :name "
       "WHERE id = :id;"),
     &stmt);
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
   }
 
-  rv = stmt->BindStringByName(NS_LITERAL_CSTRING("name"), mNewName);
-
-  if (NS_WARN_IF(NS_FAILED(rv))) {
-    return rv;
-  }
-
-  rv = stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"), mId);
+  rv = stmt->BindStringByName(NS_LITERAL_CSTRING("name"),
+                              mMetadata->mCommonMetadata.name());
+
+  if (NS_WARN_IF(NS_FAILED(rv))) {
+    return rv;
+  }
+
+  rv = stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"),
+                             mMetadata->mCommonMetadata.id());
 
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
   }
 
   rv = stmt->Execute();
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
@@ -25501,20 +25501,22 @@ RenameIndexOp::DoDatabaseWork(DatabaseCo
            "AND id != :id;"),
         &stmt));
 
     MOZ_ALWAYS_SUCCEEDS(
       stmt->BindInt64ByName(NS_LITERAL_CSTRING("object_store_id"),
                             mObjectStoreId));
 
     MOZ_ALWAYS_SUCCEEDS(
-      stmt->BindStringByName(NS_LITERAL_CSTRING("name"), mNewName));
+      stmt->BindStringByName(NS_LITERAL_CSTRING("name"),
+                             mMetadata->mCommonMetadata.name()));
 
     MOZ_ALWAYS_SUCCEEDS(
-      stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"), mIndexId));
+      stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"),
+                            mMetadata->mCommonMetadata.id()));
 
     bool hasResult;
     MOZ_ALWAYS_SUCCEEDS(stmt->ExecuteStep(&hasResult));
     MOZ_ASSERT(!hasResult);
   }
 #else
   Unused << mObjectStoreId;
 #endif
@@ -25530,23 +25532,25 @@ RenameIndexOp::DoDatabaseWork(DatabaseCo
     "UPDATE object_store_index "
       "SET name = :name "
       "WHERE id = :id;"),
     &stmt);
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
   }
 
-  rv = stmt->BindStringByName(NS_LITERAL_CSTRING("name"), mNewName);
-
-  if (NS_WARN_IF(NS_FAILED(rv))) {
-    return rv;
-  }
-
-  rv = stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"), mIndexId);
+  rv = stmt->BindStringByName(NS_LITERAL_CSTRING("name"),
+                              mMetadata->mCommonMetadata.name());
+
+  if (NS_WARN_IF(NS_FAILED(rv))) {
+    return rv;
+  }
+
+  rv = stmt->BindInt64ByName(NS_LITERAL_CSTRING("id"),
+                             mMetadata->mCommonMetadata.id());
 
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
   }
 
   rv = stmt->Execute();
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/IndexedDB/idbindex-rename.html.ini
@@ -0,0 +1,11 @@
+[idbindex-rename.html]
+  type: testharness
+  disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1309527
+  expected:
+    if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): CRASH
+    if debug and not e10s and (os == "win") and (version == "5.1.2600") and (processor == "x86") and (bits == 32): CRASH
+    if debug and not e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): CRASH
+    if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): CRASH
+    if debug and e10s and (os == "win") and (version == "5.1.2600") and (processor == "x86") and (bits == 32): CRASH
+    if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): CRASH
+    if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): CRASH
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/IndexedDB/idbobjectstore-rename-store.html.ini
@@ -0,0 +1,22 @@
+[idbobjectstore-rename-store.html]
+  type: testharness
+  disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1309527
+  expected:
+    if debug and not e10s and (os == "win") and (version == "5.1.2600") and (processor == "x86") and (bits == 32): CRASH
+    if debug and not e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): CRASH
+    if debug and e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): CRASH
+    if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): CRASH
+    if not debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): TIMEOUT
+    if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): CRASH
+    if debug and e10s and (os == "win") and (version == "5.1.2600") and (processor == "x86") and (bits == 32): CRASH
+    if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): TIMEOUT
+    if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): CRASH
+  [IndexedDB object store can be renamed to "\\u0000"]
+    expected:
+      if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): TIMEOUT
+
+  [IndexedDB object store can be renamed to "\\uDC00\\uD800"]
+    expected:
+      if not debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): TIMEOUT
+      if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): NOTRUN
+