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

Unified Diff: content/browser/indexed_db/indexed_db_class_factory.h

Issue 2760163002: [IndexedDB] Pool and evict leveldb iterators, to save memory (Closed)
Patch Set: comments & lifetime fix Created 3 years, 9 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: content/browser/indexed_db/indexed_db_class_factory.h
diff --git a/content/browser/indexed_db/indexed_db_class_factory.h b/content/browser/indexed_db/indexed_db_class_factory.h
index 3c218f0a8343bad65df564fdb908eb43ee5dce85..b820ee0df10ea9dab802b3a5c09ea199012eea88 100644
--- a/content/browser/indexed_db/indexed_db_class_factory.h
+++ b/content/browser/indexed_db/indexed_db_class_factory.h
@@ -19,6 +19,7 @@
namespace leveldb {
class Iterator;
+class Snapshot;
} // namespace leveldb
namespace content {
@@ -29,6 +30,7 @@ class IndexedDBFactory;
class IndexedDBTransaction;
class LevelDBDatabase;
class LevelDBIteratorImpl;
+class LevelDBIteratorPoolController;
class LevelDBTransaction;
// Use this factory to create some IndexedDB objects. Exists solely to
@@ -55,7 +57,9 @@ class CONTENT_EXPORT IndexedDBClassFactory {
IndexedDBBackingStore::Transaction* backing_store_transaction);
virtual std::unique_ptr<LevelDBIteratorImpl> CreateIteratorImpl(
- std::unique_ptr<leveldb::Iterator> iterator);
+ std::unique_ptr<leveldb::Iterator> iterator,
+ LevelDBIteratorPoolController* pool_controller,
+ const leveldb::Snapshot* snapshot);
virtual scoped_refptr<LevelDBTransaction> CreateLevelDBTransaction(
LevelDBDatabase* db);

Powered by Google App Engine
This is Rietveld 408576698