From 5f5f80825820487e1c7ed964c94a472e84adc552 Mon Sep 17 00:00:00 2001 From: Greg Soltis Date: Tue, 13 Feb 2018 11:12:17 -0800 Subject: Keep track of number of queries in the query cache (#776) * Implement schema versions * Style fixes * newlines, copyrights, assumptions * Fix nullability * Raw ptr -> shared_ptr * kVersionTableGlobal -> kVersionGlobalTable * Drop utils, move into static methods * Drop extra include * Add a few more comments * Move version constant into migrations file * formatting? * Fix comment * Split add and update queryData * Work on adding targetCount * More work on count * Using shared_ptr * Implement count for query cache * use quotes * Add cast * Styling * Revert year bump in copyright * Add adversarial key to migration test * Add comment * Fix style --- Firestore/Source/Local/FSTMemoryQueryCache.mm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'Firestore/Source/Local/FSTMemoryQueryCache.mm') diff --git a/Firestore/Source/Local/FSTMemoryQueryCache.mm b/Firestore/Source/Local/FSTMemoryQueryCache.mm index bcab174..56d5699 100644 --- a/Firestore/Source/Local/FSTMemoryQueryCache.mm +++ b/Firestore/Source/Local/FSTMemoryQueryCache.mm @@ -90,6 +90,20 @@ NS_ASSUME_NONNULL_BEGIN } } +- (void)updateQueryData:(FSTQueryData *)queryData group:(FSTWriteGroup *)group { + self.queries[queryData.query] = queryData; + if (queryData.targetID > self.highestTargetID) { + self.highestTargetID = queryData.targetID; + } + if (queryData.sequenceNumber > self.highestListenSequenceNumber) { + self.highestListenSequenceNumber = queryData.sequenceNumber; + } +} + +- (int32_t)count { + return (int32_t)[self.queries count]; +} + - (void)removeQueryData:(FSTQueryData *)queryData group:(__unused FSTWriteGroup *)group { [self.queries removeObjectForKey:queryData.query]; [self.references removeReferencesForID:queryData.targetID]; -- cgit v1.2.3