Chromium Code Reviews| Index: content/browser/indexed_db/leveldb/leveldb_database.cc |
| diff --git a/content/browser/indexed_db/leveldb/leveldb_database.cc b/content/browser/indexed_db/leveldb/leveldb_database.cc |
| index 9e70f463856ad7e1c5ab5a0e2fb69e161853be60..d9708aca53e957d5d81876c33a76f4b5fdffd7e8 100644 |
| --- a/content/browser/indexed_db/leveldb/leveldb_database.cc |
| +++ b/content/browser/indexed_db/leveldb/leveldb_database.cc |
| @@ -264,6 +264,8 @@ leveldb::Status LevelDBDatabase::Open(const base::FilePath& file_name, |
| const LevelDBComparator* comparator, |
| scoped_ptr<LevelDBDatabase>* result, |
| bool* is_disk_full) { |
| + base::TimeTicks begin_time = base::TimeTicks::Now(); |
| + |
| scoped_ptr<ComparatorAdapter> comparator_adapter( |
| new ComparatorAdapter(comparator)); |
| @@ -284,6 +286,9 @@ leveldb::Status LevelDBDatabase::Open(const base::FilePath& file_name, |
| return s; |
| } |
| + UMA_HISTOGRAM_MEDIUM_TIMES("WebCore.IndexedDB.LevelDB.OpenTime.Disk", |
|
jsbell
2014/08/13 22:49:11
Assumes anything < 10 seconds is "fast enough" and
cmumford
2014/08/13 23:53:02
If I'm reading the code correctly then UMA_HISTOGR
dgrogan
2014/08/13 23:55:18
They'll show up in the 0 bucket.
|
| + base::TimeTicks::Now() - begin_time); |
| + |
| CheckFreeSpace("Success", file_name); |
| (*result).reset(new LevelDBDatabase); |
| @@ -320,6 +325,8 @@ scoped_ptr<LevelDBDatabase> LevelDBDatabase::OpenInMemory( |
| leveldb::Status LevelDBDatabase::Put(const StringPiece& key, |
| std::string* value) { |
| + base::TimeTicks begin_time = base::TimeTicks::Now(); |
| + |
| leveldb::WriteOptions write_options; |
| write_options.sync = kSyncWrites; |
| @@ -327,6 +334,9 @@ leveldb::Status LevelDBDatabase::Put(const StringPiece& key, |
| db_->Put(write_options, MakeSlice(key), MakeSlice(*value)); |
| if (!s.ok()) |
| LOG(ERROR) << "LevelDB put failed: " << s.ToString(); |
| + else |
| + UMA_HISTOGRAM_TIMES("WebCore.IndexedDB.LevelDB.PutTime", |
| + base::TimeTicks::Now() - begin_time); |
| return s; |
| } |
| @@ -363,6 +373,7 @@ leveldb::Status LevelDBDatabase::Get(const StringPiece& key, |
| } |
| leveldb::Status LevelDBDatabase::Write(const LevelDBWriteBatch& write_batch) { |
| + base::TimeTicks begin_time = base::TimeTicks::Now(); |
| leveldb::WriteOptions write_options; |
| write_options.sync = kSyncWrites; |
| @@ -371,6 +382,9 @@ leveldb::Status LevelDBDatabase::Write(const LevelDBWriteBatch& write_batch) { |
| if (!s.ok()) { |
| HistogramLevelDBError("WebCore.IndexedDB.LevelDBWriteErrors", s); |
| LOG(ERROR) << "LevelDB write failed: " << s.ToString(); |
| + } else { |
| + UMA_HISTOGRAM_TIMES("WebCore.IndexedDB.LevelDB.WriteTime", |
| + base::TimeTicks::Now() - begin_time); |
| } |
| return s; |
| } |