Skip to content

Commit 388f267

Browse files
author
Greg Soltis
authored
Remove FSTMutationQueue (#2319)
* Remove FSTMutationQueue
1 parent 8626e31 commit 388f267

16 files changed

+85
-635
lines changed

Firestore/Example/Tests/Local/FSTLRUGarbageCollectorTests.mm

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@
2424
#import "FIRTimestamp.h"
2525
#import "Firestore/Example/Tests/Util/FSTHelpers.h"
2626
#import "Firestore/Source/Local/FSTLRUGarbageCollector.h"
27-
#import "Firestore/Source/Local/FSTMutationQueue.h"
2827
#import "Firestore/Source/Local/FSTPersistence.h"
2928
#import "Firestore/Source/Model/FSTDocument.h"
3029
#import "Firestore/Source/Model/FSTFieldValue.h"
3130
#import "Firestore/Source/Model/FSTMutation.h"
3231
#import "Firestore/Source/Util/FSTClasses.h"
3332
#include "Firestore/core/src/firebase/firestore/auth/user.h"
33+
#include "Firestore/core/src/firebase/firestore/local/mutation_queue.h"
3434
#include "Firestore/core/src/firebase/firestore/local/query_cache.h"
3535
#include "Firestore/core/src/firebase/firestore/local/reference_set.h"
3636
#include "Firestore/core/src/firebase/firestore/local/remote_document_cache.h"
@@ -44,6 +44,7 @@
4444
using firebase::firestore::auth::User;
4545
using firebase::firestore::local::LruParams;
4646
using firebase::firestore::local::LruResults;
47+
using firebase::firestore::local::MutationQueue;
4748
using firebase::firestore::local::QueryCache;
4849
using firebase::firestore::local::ReferenceSet;
4950
using firebase::firestore::local::RemoteDocumentCache;
@@ -64,7 +65,7 @@ @implementation FSTLRUGarbageCollectorTests {
6465
id<FSTPersistence> _persistence;
6566
QueryCache *_queryCache;
6667
RemoteDocumentCache *_documentCache;
67-
id<FSTMutationQueue> _mutationQueue;
68+
MutationQueue *_mutationQueue;
6869
id<FSTLRUDelegate> _lruDelegate;
6970
FSTLRUGarbageCollector *_gc;
7071
ListenSequenceNumber _initialSequenceNumber;
@@ -96,7 +97,7 @@ - (void)newTestResourcesWithLruParams:(LruParams)lruParams {
9697
_mutationQueue = [_persistence mutationQueueForUser:_user];
9798
_lruDelegate = (id<FSTLRUDelegate>)_persistence.referenceDelegate;
9899
_initialSequenceNumber = _persistence.run("start querycache", [&]() -> ListenSequenceNumber {
99-
[_mutationQueue start];
100+
_mutationQueue->Start();
100101
_gc = _lruDelegate.gc;
101102
return _persistence.currentSequenceNumber;
102103
});
@@ -447,7 +448,7 @@ - (void)testRemoveOrphanedDocuments {
447448
// serve to keep the mutated documents from being GC'd while the mutations are outstanding.
448449
_persistence.run("actually register the mutations", [&]() {
449450
FIRTimestamp *writeTime = [FIRTimestamp timestamp];
450-
[_mutationQueue addMutationBatchWithWriteTime:writeTime mutations:mutations];
451+
_mutationQueue->AddMutationBatch(writeTime, mutations);
451452
});
452453

453454
// Mark 5 documents eligible for GC. This simulates documents that were mutated then ack'd.

Firestore/Example/Tests/Local/FSTLevelDBMigrationsTests.mm

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
#import "Firestore/Protos/objc/firestore/local/Mutation.pbobjc.h"
2424
#import "Firestore/Protos/objc/firestore/local/Target.pbobjc.h"
2525
#import "Firestore/Source/Local/FSTLevelDB.h"
26-
#import "Firestore/Source/Local/FSTLevelDBMutationQueue.h"
2726

2827
#include "Firestore/core/src/firebase/firestore/local/leveldb_key.h"
2928
#include "Firestore/core/src/firebase/firestore/local/leveldb_migrations.h"

Firestore/Example/Tests/Local/FSTLevelDBMutationQueueTests.mm

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
* limitations under the License.
1515
*/
1616

17-
#import "Firestore/Source/Local/FSTLevelDBMutationQueue.h"
18-
1917
#import <XCTest/XCTest.h>
2018

2119
#include <string>
@@ -81,7 +79,7 @@ - (void)setUp {
8179
_db = [FSTPersistenceTestHelpers levelDBPersistence];
8280
[_db.referenceDelegate addInMemoryPins:&_additionalReferences];
8381

84-
self.mutationQueue = [_db mutationQueueForUser:User("user")].mutationQueue;
82+
self.mutationQueue = [_db mutationQueueForUser:User("user")];
8583
self.persistence = _db;
8684

8785
self.persistence.run("Setup", [&]() { self.mutationQueue->Start(); });

Firestore/Example/Tests/Local/FSTMemoryMutationQueueTests.mm

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
* limitations under the License.
1515
*/
1616

17-
#import "Firestore/Source/Local/FSTMemoryMutationQueue.h"
18-
1917
#import "Firestore/Source/Local/FSTMemoryPersistence.h"
2018

2119
#import "Firestore/Example/Tests/Local/FSTMutationQueueTests.h"
@@ -43,7 +41,7 @@ - (void)setUp {
4341

4442
self.persistence = [FSTPersistenceTestHelpers eagerGCMemoryPersistence];
4543
[self.persistence.referenceDelegate addInMemoryPins:&_additionalReferences];
46-
self.mutationQueue = [self.persistence mutationQueueForUser:User("user")].mutationQueue;
44+
self.mutationQueue = [self.persistence mutationQueueForUser:User("user")];
4745
}
4846

4947
@end

Firestore/Source/Local/FSTLRUGarbageCollector.mm

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
#include <queue>
2121
#include <utility>
2222

23-
#import "Firestore/Source/Local/FSTMutationQueue.h"
2423
#import "Firestore/Source/Local/FSTPersistence.h"
2524
#include "Firestore/core/include/firebase/firestore/timestamp.h"
2625
#include "Firestore/core/src/firebase/firestore/model/document_key.h"

Firestore/Source/Local/FSTLevelDB.mm

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,14 @@
2222

2323
#import "FIRFirestoreErrors.h"
2424
#import "Firestore/Source/Local/FSTLRUGarbageCollector.h"
25-
#import "Firestore/Source/Local/FSTLevelDBMutationQueue.h"
2625
#import "Firestore/Source/Remote/FSTSerializerBeta.h"
2726

2827
#include "Firestore/core/include/firebase/firestore/firestore_errors.h"
2928
#include "Firestore/core/src/firebase/firestore/auth/user.h"
3029
#include "Firestore/core/src/firebase/firestore/core/database_info.h"
3130
#include "Firestore/core/src/firebase/firestore/local/leveldb_key.h"
3231
#include "Firestore/core/src/firebase/firestore/local/leveldb_migrations.h"
32+
#include "Firestore/core/src/firebase/firestore/local/leveldb_mutation_queue.h"
3333
#include "Firestore/core/src/firebase/firestore/local/leveldb_query_cache.h"
3434
#include "Firestore/core/src/firebase/firestore/local/leveldb_remote_document_cache.h"
3535
#include "Firestore/core/src/firebase/firestore/local/leveldb_transaction.h"
@@ -63,6 +63,7 @@
6363
using firebase::firestore::local::LevelDbDocumentTargetKey;
6464
using firebase::firestore::local::LevelDbMigrations;
6565
using firebase::firestore::local::LevelDbMutationKey;
66+
using firebase::firestore::local::LevelDbMutationQueue;
6667
using firebase::firestore::local::LevelDbQueryCache;
6768
using firebase::firestore::local::LevelDbRemoteDocumentCache;
6869
using firebase::firestore::local::LevelDbTransaction;
@@ -93,7 +94,9 @@ - (size_t)byteSize;
9394

9495
@property(nonatomic, assign, getter=isStarted) BOOL started;
9596

96-
- (firebase::firestore::local::LevelDbQueryCache *)queryCache;
97+
- (LevelDbQueryCache *)queryCache;
98+
99+
- (LevelDbMutationQueue *)mutationQueueForUser:(const User &)user;
97100

98101
@end
99102

@@ -280,6 +283,7 @@ @implementation FSTLevelDB {
280283
FSTLevelDBLRUDelegate *_referenceDelegate;
281284
std::unique_ptr<LevelDbQueryCache> _queryCache;
282285
std::set<std::string> _users;
286+
std::unique_ptr<LevelDbMutationQueue> _currentMutationQueue;
283287
}
284288

285289
/**
@@ -463,9 +467,10 @@ - (LevelDbTransaction *)currentTransaction {
463467

464468
#pragma mark - Persistence Factory methods
465469

466-
- (id<FSTMutationQueue>)mutationQueueForUser:(const User &)user {
470+
- (LevelDbMutationQueue *)mutationQueueForUser:(const User &)user {
467471
_users.insert(user.uid());
468-
return [FSTLevelDBMutationQueue mutationQueueWithUser:user db:self serializer:self.serializer];
472+
_currentMutationQueue.reset(new LevelDbMutationQueue(user, self, self.serializer));
473+
return _currentMutationQueue.get();
469474
}
470475

471476
- (LevelDbQueryCache *)queryCache {

Firestore/Source/Local/FSTLevelDBMutationQueue.h

Lines changed: 0 additions & 52 deletions
This file was deleted.

Firestore/Source/Local/FSTLevelDBMutationQueue.mm

Lines changed: 0 additions & 181 deletions
This file was deleted.

0 commit comments

Comments
 (0)