From 423fa88dec53aa98a29dd70ba68d31e92734bb6e Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Tue, 8 Feb 2022 13:36:09 -0700 Subject: [PATCH 1/2] Send target to backend before local processing --- packages/firestore/src/core/sync_engine_impl.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/firestore/src/core/sync_engine_impl.ts b/packages/firestore/src/core/sync_engine_impl.ts index c2e42c74a6b..ae1ab104df4 100644 --- a/packages/firestore/src/core/sync_engine_impl.ts +++ b/packages/firestore/src/core/sync_engine_impl.ts @@ -314,6 +314,9 @@ export async function syncEngineListen( syncEngineImpl.localStore, queryToTarget(query) ); + if (syncEngineImpl.isPrimaryClient) { + remoteStoreListen(syncEngineImpl.remoteStore, targetData); + } const status = syncEngineImpl.sharedClientState.addLocalQueryTarget( targetData.targetId @@ -325,9 +328,6 @@ export async function syncEngineListen( targetId, status === 'current' ); - if (syncEngineImpl.isPrimaryClient) { - remoteStoreListen(syncEngineImpl.remoteStore, targetData); - } } return viewSnapshot; From d95433c4e701342304f8d428f9c8475dcdf8c7e6 Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Tue, 8 Feb 2022 13:38:14 -0700 Subject: [PATCH 2/2] Create lemon-ravens-sneeze.md --- .changeset/lemon-ravens-sneeze.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/lemon-ravens-sneeze.md diff --git a/.changeset/lemon-ravens-sneeze.md b/.changeset/lemon-ravens-sneeze.md new file mode 100644 index 00000000000..872c1fea682 --- /dev/null +++ b/.changeset/lemon-ravens-sneeze.md @@ -0,0 +1,5 @@ +--- +"@firebase/firestore": patch +--- + +Queries are now send to the backend before the SDK starts local processing, which reduces overall Query latency.