diff options
author | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-28 10:44:42 +0000 |
---|---|---|
committer | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-28 10:44:42 +0000 |
commit | aeba9c1252f1870d7beb980e5ba31f0fe6094ee0 (patch) | |
tree | 0ea3d6db4505757c5e2fbf39adef4092447c47d1 /webkit/fileapi/local_file_system_operation_unittest.cc | |
parent | bf0ff5437b8d1747d68f7a0652157f4960587373 (diff) | |
download | chromium_src-aeba9c1252f1870d7beb980e5ba31f0fe6094ee0.zip chromium_src-aeba9c1252f1870d7beb980e5ba31f0fe6094ee0.tar.gz chromium_src-aeba9c1252f1870d7beb980e5ba31f0fe6094ee0.tar.bz2 |
Split recursive Copy/Move into async tasks and support cross operation (in local case)
Also get cross-filesystem operation working
(as far as both belong to LocalFileSystemOperation).
(I'll make related clean-ups in follow-up patches later)
Similarly to dividing Remove change this basically makes
end-to-end recursive copy/move operation SLOW, while
concurrent tasks won't be blocked for a long time.
With config: 200 files, 120 dirs, 4-level tree, total 100MB
* Copy:
Before this change: Ave:164.01 msec, Stddev: 3.534 msec
After this change: Ave:228.34 msec, Stddev: 36.014 msec
* Move (copy+remove after this change):
Before this change: Ave: 87.76 msec, Stddev: 4.631 msec
After this change: Ave:392.12 msec, Stddev:35.340 msec
Patch from: https://codereview.chromium.org/12018017/
Try results: https://codereview.chromium.org/12051010/
BUG=110121,146215
TEST=content_browsertests:FileSystemLayoutTest.{OpCopy,OpMove,CrossFilesystemOp}
Review URL: https://codereview.chromium.org/12036022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179128 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/fileapi/local_file_system_operation_unittest.cc')
-rw-r--r-- | webkit/fileapi/local_file_system_operation_unittest.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/webkit/fileapi/local_file_system_operation_unittest.cc b/webkit/fileapi/local_file_system_operation_unittest.cc index d170b7c..c49e2b2 100644 --- a/webkit/fileapi/local_file_system_operation_unittest.cc +++ b/webkit/fileapi/local_file_system_operation_unittest.cc @@ -685,7 +685,9 @@ TEST_F(LocalFileSystemOperationTest, TestCopySuccessSrcDirRecursive) { EXPECT_TRUE(FileExists(dest_dir_path.Append( VirtualPath::BaseName(child_dir_path)).Append( VirtualPath::BaseName(grandchild_file_path)))); - EXPECT_EQ(1, quota_manager_proxy()->notify_storage_accessed_count()); + + // For recursive copy we may record multiple read access. + EXPECT_GE(quota_manager_proxy()->notify_storage_accessed_count(), 1); EXPECT_EQ(2, change_observer()->get_and_reset_create_directory_count()); EXPECT_EQ(1, change_observer()->get_and_reset_remove_directory_count()); |