Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2397)

Unified Diff: chrome/browser/sync_file_system/drive_backend/metadata_database.cc

Issue 552723002: [SyncFS] Test MetadataDatabaseTest using both on-memory and on-disk indexes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync_file_system/drive_backend/metadata_database.cc
diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc
index 4f8946ce71a169a29addef71013872a174d5fa8a..39bc8d2a90c03721ea51d059537203e9fdef73d3 100644
--- a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc
+++ b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc
@@ -522,14 +522,17 @@ void RemoveFileTracker(int64 tracker_id,
struct MetadataDatabase::CreateParam {
scoped_refptr<base::SequencedTaskRunner> worker_task_runner;
base::FilePath database_path;
+ bool enable_on_disk_index;
leveldb::Env* env_override;
CreateParam(
const scoped_refptr<base::SequencedTaskRunner>& worker_task_runner,
const base::FilePath& database_path,
+ bool enable_on_disk_index,
leveldb::Env* env_override)
: worker_task_runner(worker_task_runner),
database_path(database_path),
+ enable_on_disk_index(enable_on_disk_index),
env_override(env_override) {}
};
@@ -539,11 +542,32 @@ void MetadataDatabase::Create(
const base::FilePath& database_path,
leveldb::Env* env_override,
const CreateCallback& callback) {
+ bool enable_on_disk_index = !CommandLine::ForCurrentProcess()->HasSwitch(
+ kDisableMetadataDatabaseOnDisk);
+
worker_task_runner->PostTask(FROM_HERE, base::Bind(
&MetadataDatabase::CreateOnWorkerTaskRunner,
base::Passed(make_scoped_ptr(new CreateParam(
worker_task_runner,
database_path,
+ enable_on_disk_index,
+ env_override))),
+ callback));
+}
+
+// static
+void MetadataDatabase::CreateOnWorkerForTesting(
+ const scoped_refptr<base::SequencedTaskRunner>& worker_task_runner,
+ const base::FilePath& database_path,
+ bool enable_on_disk_index,
+ leveldb::Env* env_override,
+ const CreateCallback& callback) {
+ worker_task_runner->PostTask(FROM_HERE, base::Bind(
tzik 2014/09/09 08:33:27 This PostTask is no longer needed, though we've no
peria 2014/09/10 05:40:12 Acknowledged.
+ &MetadataDatabase::CreateOnWorkerTaskRunner,
+ base::Passed(make_scoped_ptr(new CreateParam(
+ worker_task_runner,
+ database_path,
+ enable_on_disk_index,
env_override))),
callback));
}
@@ -1425,12 +1449,10 @@ void MetadataDatabase::CreateOnWorkerTaskRunner(
const CreateCallback& callback) {
DCHECK(create_param->worker_task_runner->RunsTasksOnCurrentThread());
- bool enable_on_disk_index = !CommandLine::ForCurrentProcess()->HasSwitch(
- kDisableMetadataDatabaseOnDisk);
scoped_ptr<MetadataDatabase> metadata_database(
new MetadataDatabase(create_param->worker_task_runner,
create_param->database_path,
- enable_on_disk_index,
+ create_param->enable_on_disk_index,
create_param->env_override));
SyncStatusCode status = metadata_database->Initialize();
@@ -1442,7 +1464,7 @@ void MetadataDatabase::CreateOnWorkerTaskRunner(
metadata_database.reset(
new MetadataDatabase(create_param->worker_task_runner,
create_param->database_path,
- enable_on_disk_index,
+ create_param->enable_on_disk_index,
create_param->env_override));
status = metadata_database->Initialize();
}

Powered by Google App Engine
This is Rietveld 408576698