From d9b2d312d94387f337c95cb442b828a312bbf18c Mon Sep 17 00:00:00 2001 From: Greg Soltis Date: Thu, 29 Mar 2018 08:55:10 -0700 Subject: Remove some usages of FSTWriteGroup (#983) * FSTMutationQueue no longer needs groups * Remove write group from mutation queue entirely * Remove write group from query cache * Mark groups unused in remote document cache * Drop write group entirely from remote document cache * style * Drop commented-out code * Drop commented-out code --- Firestore/Source/Local/FSTLevelDBMutationQueue.mm | 28 ++++++++++------------- 1 file changed, 12 insertions(+), 16 deletions(-) (limited to 'Firestore/Source/Local/FSTLevelDBMutationQueue.mm') diff --git a/Firestore/Source/Local/FSTLevelDBMutationQueue.mm b/Firestore/Source/Local/FSTLevelDBMutationQueue.mm index 6d4bd29..a1e9e4c 100644 --- a/Firestore/Source/Local/FSTLevelDBMutationQueue.mm +++ b/Firestore/Source/Local/FSTLevelDBMutationQueue.mm @@ -28,7 +28,6 @@ #import "Firestore/Source/Local/FSTLevelDB.h" #import "Firestore/Source/Local/FSTLevelDBKey.h" #import "Firestore/Source/Local/FSTLocalSerializer.h" -#import "Firestore/Source/Local/FSTWriteGroup.h" #import "Firestore/Source/Model/FSTMutation.h" #import "Firestore/Source/Model/FSTMutationBatch.h" #import "Firestore/Source/Util/FSTAssert.h" @@ -104,7 +103,7 @@ using leveldb::WriteOptions; return self; } -- (void)startWithGroup:(FSTWriteGroup *)group { +- (void)start { FSTBatchID nextBatchID = [FSTLevelDBMutationQueue loadNextBatchIDFromDB:_db.ptr]; // On restart, nextBatchId may end up lower than lastAcknowledgedBatchId since it's computed from @@ -125,7 +124,7 @@ using leveldb::WriteOptions; lastAcked = kFSTBatchIDUnknown; metadata.lastAcknowledgedBatchId = lastAcked; - [group setMessage:metadata forKey:[self keyForCurrentMutationQueue]]; + _db.currentTransaction->Put([self keyForCurrentMutationQueue], metadata); } } @@ -217,9 +216,7 @@ using leveldb::WriteOptions; return self.metadata.lastAcknowledgedBatchId; } -- (void)acknowledgeBatch:(FSTMutationBatch *)batch - streamToken:(nullable NSData *)streamToken - group:(FSTWriteGroup *)group { +- (void)acknowledgeBatch:(FSTMutationBatch *)batch streamToken:(nullable NSData *)streamToken { FSTBatchID batchID = batch.batchID; FSTAssert(batchID > self.highestAcknowledgedBatchID, @"Mutation batchIDs must be acknowledged in order"); @@ -228,18 +225,18 @@ using leveldb::WriteOptions; metadata.lastAcknowledgedBatchId = batchID; metadata.lastStreamToken = streamToken; - [group setMessage:metadata forKey:[self keyForCurrentMutationQueue]]; + _db.currentTransaction->Put([self keyForCurrentMutationQueue], metadata); } - (nullable NSData *)lastStreamToken { return self.metadata.lastStreamToken; } -- (void)setLastStreamToken:(nullable NSData *)streamToken group:(FSTWriteGroup *)group { +- (void)setLastStreamToken:(nullable NSData *)streamToken { FSTPBMutationQueue *metadata = self.metadata; metadata.lastStreamToken = streamToken; - [group setMessage:metadata forKey:[self keyForCurrentMutationQueue]]; + _db.currentTransaction->Put([self keyForCurrentMutationQueue], metadata); } - (std::string)keyForCurrentMutationQueue { @@ -260,8 +257,7 @@ using leveldb::WriteOptions; } - (FSTMutationBatch *)addMutationBatchWithWriteTime:(FIRTimestamp *)localWriteTime - mutations:(NSArray *)mutations - group:(FSTWriteGroup *)group { + mutations:(NSArray *)mutations { FSTBatchID batchID = self.nextBatchID; self.nextBatchID += 1; @@ -269,7 +265,7 @@ using leveldb::WriteOptions; localWriteTime:localWriteTime mutations:mutations]; std::string key = [self mutationKeyForBatch:batch]; - [group setMessage:[self.serializer encodedMutationBatch:batch] forKey:key]; + _db.currentTransaction->Put(key, [self.serializer encodedMutationBatch:batch]); NSString *userID = self.userID; @@ -282,7 +278,7 @@ using leveldb::WriteOptions; key = [FSTLevelDBDocumentMutationKey keyWithUserID:userID documentKey:mutation.key batchID:batchID]; - [group setData:emptyBuffer forKey:key]; + _db.currentTransaction->Put(key, emptyBuffer); } return batch; @@ -492,7 +488,7 @@ using leveldb::WriteOptions; return result; } -- (void)removeMutationBatches:(NSArray *)batches group:(FSTWriteGroup *)group { +- (void)removeMutationBatches:(NSArray *)batches { NSString *userID = self.userID; id garbageCollector = self.garbageCollector; @@ -511,13 +507,13 @@ using leveldb::WriteOptions; [FSTLevelDBKey descriptionForKey:key], [FSTLevelDBKey descriptionForKey:checkIterator->key()]); - [group removeMessageForKey:key]; + _db.currentTransaction->Delete(key); for (FSTMutation *mutation in batch.mutations) { key = [FSTLevelDBDocumentMutationKey keyWithUserID:userID documentKey:mutation.key batchID:batchID]; - [group removeMessageForKey:key]; + _db.currentTransaction->Delete(key); [garbageCollector addPotentialGarbageKey:mutation.key]; } } -- cgit v1.2.3