Skip to content

Commit 46cfa2f

Browse files
committed
Address feedbacks
1 parent 0336972 commit 46cfa2f

File tree

5 files changed

+19
-21
lines changed

5 files changed

+19
-21
lines changed

firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@
6363
import java.util.ArrayList;
6464
import java.util.List;
6565
import java.util.concurrent.Executor;
66-
import java.util.concurrent.atomic.AtomicReference;
6766
import org.json.JSONArray;
6867
import org.json.JSONException;
6968
import org.json.JSONObject;
@@ -106,8 +105,7 @@ public interface InstanceRegistry {
106105
private volatile FirestoreClient client;
107106
private final GrpcMetadataProvider metadataProvider;
108107

109-
private final AtomicReference<PersistentCacheIndexManager> persistentCacheIndexManager =
110-
new AtomicReference<>();
108+
@Nullable private PersistentCacheIndexManager persistentCacheIndexManager;
111109

112110
@NonNull
113111
private static FirebaseApp getDefaultFirebaseApp() {
@@ -418,16 +416,14 @@ public Task<Void> setIndexConfiguration(@NonNull String json) {
418416
/** @hide */
419417
@RestrictTo(RestrictTo.Scope.LIBRARY)
420418
@Nullable
421-
public PersistentCacheIndexManager getPersistentCacheIndexManager() {
419+
public synchronized PersistentCacheIndexManager getPersistentCacheIndexManager() {
422420
ensureClientConfigured();
423-
424-
if ((settings.isPersistenceEnabled()
425-
|| settings.getCacheSettings() instanceof PersistentCacheSettings)
426-
&& persistentCacheIndexManager.get() == null) {
427-
persistentCacheIndexManager.set(new PersistentCacheIndexManager(client));
421+
if (persistentCacheIndexManager == null
422+
&& (settings.isPersistenceEnabled()
423+
|| settings.getCacheSettings() instanceof PersistentCacheSettings)) {
424+
persistentCacheIndexManager = new PersistentCacheIndexManager(client);
428425
}
429-
430-
return persistentCacheIndexManager.get();
426+
return persistentCacheIndexManager;
431427
}
432428

433429
/**

firebase-firestore/src/main/java/com/google/firebase/firestore/local/IndexManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ enum IndexType {
7979
void deleteFieldIndex(FieldIndex index);
8080

8181
/** Creates a full matched field index which serves the given target. */
82-
void createTargetIndices(Target target);
82+
void createTargetIndexes(Target target);
8383

8484
/**
8585
* Returns a list of field indexes that correspond to the specified collection group.

firebase-firestore/src/main/java/com/google/firebase/firestore/local/MemoryIndexManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public void deleteFieldIndex(FieldIndex index) {
6161
}
6262

6363
@Override
64-
public void createTargetIndices(Target target) {}
64+
public void createTargetIndexes(Target target) {}
6565

6666
@Override
6767
@Nullable

firebase-firestore/src/main/java/com/google/firebase/firestore/local/QueryEngine.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
public class QueryEngine {
6363
private static final String LOG_TAG = "QueryEngine";
6464

65-
private static final int INDEX_AUTO_CREATION_DEFAULT_MIN_COLLECTION_SIZE = 100;
65+
private static final int DEFAULT_INDEX_AUTO_CREATION_MIN_COLLECTION_SIZE = 100;
6666

6767
/**
6868
* This cost represents the evaluation result of (([index, docKey] + [docKey, docContent]) per
@@ -78,7 +78,7 @@ public class QueryEngine {
7878
private boolean indexAutoCreationEnabled = false;
7979

8080
/** SDK only decides whether it should create index when collection size is larger than this. */
81-
private int indexAutoCreationMinCollectionSize = INDEX_AUTO_CREATION_DEFAULT_MIN_COLLECTION_SIZE;
81+
private int indexAutoCreationMinCollectionSize = DEFAULT_INDEX_AUTO_CREATION_MIN_COLLECTION_SIZE;
8282

8383
private double relativeIndexReadCostPerDocument = DEFAULT_RELATIVE_INDEX_READ_COST_PER_DOCUMENT;
8484

@@ -138,16 +138,18 @@ private void createCacheIndexes(Query query, QueryContext context, int resultSiz
138138
resultSize);
139139

140140
if (context.getDocumentReadCount() > relativeIndexReadCostPerDocument * resultSize) {
141-
indexManager.createTargetIndices(query.toTarget());
141+
indexManager.createTargetIndexes(query.toTarget());
142142
Logger.debug(
143143
LOG_TAG,
144-
"The SDK decides to create cache indexes for this query, as using cache indexes "
145-
+ "may help improve performance.");
144+
"The SDK decides to create cache indexes for query: %s, as using cache indexes "
145+
+ "may help improve performance.",
146+
query.toString());
146147
} else {
147148
Logger.debug(
148149
LOG_TAG,
149-
"The SDK decides not to create cache indexes for this query, as using cache indexes "
150-
+ "may not help improve performance.");
150+
"The SDK decides not to create cache indexes for this query: %s, as using cache "
151+
+ "indexes may not help improve performance.",
152+
query.toString());
151153
}
152154
}
153155

firebase-firestore/src/main/java/com/google/firebase/firestore/local/SQLiteIndexManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ public void deleteFieldIndex(FieldIndex index) {
234234
}
235235

236236
@Override
237-
public void createTargetIndices(Target target) {
237+
public void createTargetIndexes(Target target) {
238238
hardAssert(started, "IndexManager not started");
239239

240240
for (Target subTarget : getSubTargets(target)) {

0 commit comments

Comments
 (0)