Skip to content

Public Auto Persistent Index Creation API #5256

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Aug 31, 2023
Merged

Conversation

cherylEnkidu
Copy link
Contributor

No description provided.

@github-actions
Copy link
Contributor

github-actions bot commented Aug 17, 2023

Javadoc Changes:
--- /Users/runner/diff/original/firebase-kotlindoc/android/client/firebase-firestore/_toc.yaml	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/client/firebase-firestore/_toc.yaml	2023-08-21 20:22:33.000000000 +0000
@@ -68,6 +68,8 @@
       path: "/docs/reference/android/com/google/firebase/firestore/MemoryLruGcSettings.html"
     - title: "MemoryLruGcSettings.Builder"
       path: "/docs/reference/android/com/google/firebase/firestore/MemoryLruGcSettings.Builder.html"
+    - title: "PersistentCacheIndexManager"
+      path: "/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html"
     - title: "PersistentCacheSettings"
       path: "/docs/reference/android/com/google/firebase/firestore/PersistentCacheSettings.html"
     - title: "PersistentCacheSettings.Builder"
--- /Users/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/firestore/FirebaseFirestore.html	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/firestore/FirebaseFirestore.html	2023-08-21 20:22:33.000000000 +0000
@@ -167,6 +167,13 @@
             </td>
           </tr>
           <tr>
+            <td><code>synchronized @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#getPersistentCacheIndexManager()">getPersistentCacheIndexManager</a>()</code></div>
+              <p>Returns the PersistentCache Index Manager used by this <code>FirebaseFirestore</code> object.</p>
+            </td>
+          </tr>
+          <tr>
             <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/firestore/LoadBundleTask.html">LoadBundleTask</a></code></td>
             <td>
               <div><code><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#loadBundle(byte[])">loadBundle</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> byte[]&nbsp;bundleData)</code></div>
@@ -218,8 +225,10 @@
           <tr>
             <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;</code></td>
             <td>
-              <div><code>@<a href="/docs/reference/android/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;json)</code></div>
-              <p>Configures indexing for local query execution.</p>
+              <div><code>@<a href="/docs/reference/android/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br><span><del><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></del></span>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;json)</code></div>
+              <p><strong>This method is deprecated.</strong>
+                <p>Instead of creating cache indexes manually, consider using <code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> to let SDK decide whether to create cache indexes for queries running locally.</p>
+              </p>
             </td>
           </tr>
           <tr>
@@ -779,6 +788,32 @@
         <p>Reads a Firestore <code><a href="/docs/reference/android/com/google/firebase/firestore/Query.html">Query</a></code> from local cache, identified by the given name. </p>
         <p>The named queries are packaged into bundles on the server side (along with resulting documents) and loaded to local cache using <code><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#loadBundle(byte[])">loadBundle</a></code>. Once in local cache, you can use this method to extract a query by name.</p>
       </div>
+      <div class="api-item"><a name="getPersistentCacheIndexManager--"></a><a name="getpersistentcacheindexmanager"></a>
+        <h3 class="api-name" id="getPersistentCacheIndexManager()">getPersistentCacheIndexManager</h3>
+        <pre class="api-signature no-pretty-print">synchronized&nbsp;public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#getPersistentCacheIndexManager()">getPersistentCacheIndexManager</a>()</pre>
+        <p>Returns the PersistentCache Index Manager used by this <code>FirebaseFirestore</code> object.</p>
+        <div class="devsite-table-wrapper">
+          <table class="responsive">
+            <colgroup>
+              <col width="40%">
+              <col>
+            </colgroup>
+            <thead>
+              <tr>
+                <th colspan="100%">Returns</th>
+              </tr>
+            </thead>
+            <tbody class="list">
+              <tr>
+                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></code></td>
+                <td>
+                  <p>The <code>PersistentCacheIndexManager</code> instance or null if local persistent storage is not in use.</p>
+                </td>
+              </tr>
+            </tbody>
+          </table>
+        </div>
+      </div>
       <div class="api-item"><a name="loadBundle-byte[]-"></a><a name="loadbundle"></a>
         <h3 class="api-name" id="loadBundle(byte[])">loadBundle</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/firestore/LoadBundleTask.html">LoadBundleTask</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#loadBundle(byte[])">loadBundle</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> byte[]&nbsp;bundleData)</pre>
@@ -1074,7 +1109,10 @@
       </div>
       <div class="api-item"><a name="setIndexConfiguration-java.lang.String-"></a><a name="setindexconfiguration"></a>
         <h3 class="api-name" id="setIndexConfiguration(java.lang.String)">setIndexConfiguration</h3>
-        <pre class="api-signature no-pretty-print">@<a href="/docs/reference/android/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br>public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;json)</pre>
+        <pre class="api-signature no-pretty-print">@<a href="/docs/reference/android/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br>public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;&nbsp;<span><del><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></del></span>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;json)</pre>
+        <aside class="caution"><strong>This method is deprecated.</strong><br>
+          <p>Instead of creating cache indexes manually, consider using <code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> to let SDK decide whether to create cache indexes for queries running locally.</p>
+        </aside>
         <p>Configures indexing for local query execution. Any previous index configuration is overridden. The Task resolves once the index configuration has been persisted. </p>
         <p>The index entries themselves are created asynchronously. You can continue to use queries that require indexing even if the indices are not yet available. Query execution will automatically start using the index once the index entries have been written. </p>
         <p>The method accepts the JSON format exported by the Firebase CLI (`firebase firestore:indexes`). If the JSON format is invalid, this method throws an exception.</p>
--- /Users/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/firestore/PersistentCacheIndexManager.html	1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/firestore/PersistentCacheIndexManager.html	2023-08-21 20:22:33.000000000 +0000
@@ -0,0 +1,74 @@
+<html devsite="true">
+  <head>
+    <title>PersistentCacheIndexManager</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>PersistentCacheIndexManager</h1>
+    <p>
+      <pre>public final class <a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></pre>
+    </p>
+    <hr>
+    <p>A <code>PersistentCacheIndexManager</code> which you can config persistent cache indexes used for local query execution. </p>
+    <p>To use, call <code><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#getPersistentCacheIndexManager()">getPersistentCacheIndexManager</a></code> to get an instance.</p>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public methods</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code>void</code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#deleteAllIndexes()">deleteAllIndexes</a>()</code></div>
+              <p>Removes all persistent cache indexes.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>void</code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#disableIndexAutoCreation()">disableIndexAutoCreation</a>()</code></div>
+              <p>Stops creating persistent cache indexes automatically for local query execution.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>void</code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a>()</code></div>
+              <p>Enables SDK to create persistent cache indexes automatically for local query execution when SDK believes cache indexes can help improves performance.</p>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="list">
+      <h2>Public methods</h2>
+      <div class="api-item"><a name="deleteAllIndexes--"></a><a name="deleteallindexes"></a>
+        <h3 class="api-name" id="deleteAllIndexes()">deleteAllIndexes</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#deleteAllIndexes()">deleteAllIndexes</a>()</pre>
+        <p>Removes all persistent cache indexes. Please note this function will also deletes indexes generated by <code><a href="/docs/reference/android/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></code>, which is deprecated.</p>
+      </div>
+      <div class="api-item"><a name="disableIndexAutoCreation--"></a><a name="disableindexautocreation"></a>
+        <h3 class="api-name" id="disableIndexAutoCreation()">disableIndexAutoCreation</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#disableIndexAutoCreation()">disableIndexAutoCreation</a>()</pre>
+        <p>Stops creating persistent cache indexes automatically for local query execution. The indexes which have been created by calling <code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> still take effect.</p>
+      </div>
+      <div class="api-item"><a name="enableIndexAutoCreation--"></a><a name="enableindexautocreation"></a>
+        <h3 class="api-name" id="enableIndexAutoCreation()">enableIndexAutoCreation</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a>()</pre>
+        <p>Enables SDK to create persistent cache indexes automatically for local query execution when SDK believes cache indexes can help improves performance. </p>
+        <p>This feature is disabled by default.</p>
+      </div>
+    </div>
+  </body>
+</html>
+
--- /Users/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/firestore/package-summary.html	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/firestore/package-summary.html	2023-08-21 20:22:33.000000000 +0000
@@ -242,6 +242,12 @@
             <td></td>
           </tr>
           <tr>
+            <td><code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></code></td>
+            <td>
+              <p>A <code>PersistentCacheIndexManager</code> which you can config persistent cache indexes used for local query execution.</p>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="/docs/reference/android/com/google/firebase/firestore/PersistentCacheSettings.html">PersistentCacheSettings</a></code></td>
             <td>
               <p>Configures the SDK to use a persistent cache.</p>
--- /Users/runner/diff/original/firebase-kotlindoc/kotlin/client/firebase-firestore/_toc.yaml	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/client/firebase-firestore/_toc.yaml	2023-08-21 20:22:33.000000000 +0000
@@ -68,6 +68,8 @@
       path: "/docs/reference/kotlin/com/google/firebase/firestore/MemoryLruGcSettings.html"
     - title: "MemoryLruGcSettings.Builder"
       path: "/docs/reference/kotlin/com/google/firebase/firestore/MemoryLruGcSettings.Builder.html"
+    - title: "PersistentCacheIndexManager"
+      path: "/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html"
     - title: "PersistentCacheSettings"
       path: "/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheSettings.html"
     - title: "PersistentCacheSettings.Builder"
--- /Users/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/firestore/FirebaseFirestore.html	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/firestore/FirebaseFirestore.html	2023-08-21 20:22:33.000000000 +0000
@@ -197,8 +197,10 @@
           <tr>
             <td><code><a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</code></td>
             <td>
-              <div><code>@<a href="/docs/reference/kotlin/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br><a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a>(json:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>)</code></div>
-              <p>Configures indexing for local query execution.</p>
+              <div><code>@<a href="/docs/reference/kotlin/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br><span><del><a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></del></span>(json:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>)</code></div>
+              <p><strong>This function is deprecated.</strong>
+                <p>Instead of creating cache indexes manually, consider using <code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> to let SDK decide whether to create cache indexes for queries running locally.</p>
+              </p>
             </td>
           </tr>
           <tr>
@@ -1067,7 +1069,10 @@
       </div>
       <div class="api-item"><a name="setIndexConfiguration-java.lang.String-"></a><a name="setindexconfiguration"></a>
         <h3 class="api-name" id="setIndexConfiguration(java.lang.String)">setIndexConfiguration</h3>
-        <pre class="api-signature no-pretty-print">@<a href="/docs/reference/kotlin/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br>fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a>(json:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>):&nbsp;<a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</pre>
+        <pre class="api-signature no-pretty-print">@<a href="/docs/reference/kotlin/com/google/firebase/annotations/PreviewApi.html">PreviewApi</a><br>fun&nbsp;<span><del><a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></del></span>(json:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>):&nbsp;<a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</pre>
+        <aside class="caution"><strong>This function is deprecated.</strong><br>
+          <p>Instead of creating cache indexes manually, consider using <code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> to let SDK decide whether to create cache indexes for queries running locally.</p>
+        </aside>
         <p>Configures indexing for local query execution. Any previous index configuration is overridden. The Task resolves once the index configuration has been persisted. </p>
         <p>The index entries themselves are created asynchronously. You can continue to use queries that require indexing even if the indices are not yet available. Query execution will automatically start using the index once the index entries have been written. </p>
         <p>The method accepts the JSON format exported by the Firebase CLI (`firebase firestore:indexes`). If the JSON format is invalid, this method throws an exception.</p>
--- /Users/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html	1970-01-01 00:00:00.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html	2023-08-21 20:22:33.000000000 +0000
@@ -0,0 +1,74 @@
+<html devsite="true">
+  <head>
+    <title>PersistentCacheIndexManager</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>PersistentCacheIndexManager</h1>
+    <p>
+      <pre>class <a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></pre>
+    </p>
+    <hr>
+    <p>A <code>PersistentCacheIndexManager</code> which you can config persistent cache indexes used for local query execution. </p>
+    <p>To use, call <code><a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#getPersistentCacheIndexManager()">getPersistentCacheIndexManager</a></code> to get an instance.</p>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public functions</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#deleteAllIndexes()">deleteAllIndexes</a>()</code></div>
+              <p>Removes all persistent cache indexes.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#disableIndexAutoCreation()">disableIndexAutoCreation</a>()</code></div>
+              <p>Stops creating persistent cache indexes automatically for local query execution.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a>()</code></div>
+              <p>Enables SDK to create persistent cache indexes automatically for local query execution when SDK believes cache indexes can help improves performance.</p>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="list">
+      <h2>Public functions</h2>
+      <div class="api-item"><a name="deleteAllIndexes--"></a><a name="deleteallindexes"></a>
+        <h3 class="api-name" id="deleteAllIndexes()">deleteAllIndexes</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#deleteAllIndexes()">deleteAllIndexes</a>():&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+        <p>Removes all persistent cache indexes. Please note this function will also deletes indexes generated by <code><a href="/docs/reference/kotlin/com/google/firebase/firestore/FirebaseFirestore.html#setIndexConfiguration(java.lang.String)">setIndexConfiguration</a></code>, which is deprecated.</p>
+      </div>
+      <div class="api-item"><a name="disableIndexAutoCreation--"></a><a name="disableindexautocreation"></a>
+        <h3 class="api-name" id="disableIndexAutoCreation()">disableIndexAutoCreation</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#disableIndexAutoCreation()">disableIndexAutoCreation</a>():&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+        <p>Stops creating persistent cache indexes automatically for local query execution. The indexes which have been created by calling <code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a></code> still take effect.</p>
+      </div>
+      <div class="api-item"><a name="enableIndexAutoCreation--"></a><a name="enableindexautocreation"></a>
+        <h3 class="api-name" id="enableIndexAutoCreation()">enableIndexAutoCreation</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html#enableIndexAutoCreation()">enableIndexAutoCreation</a>():&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+        <p>Enables SDK to create persistent cache indexes automatically for local query execution when SDK believes cache indexes can help improves performance. </p>
+        <p>This feature is disabled by default.</p>
+      </div>
+    </div>
+  </body>
+</html>
+
--- /Users/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/firestore/package-summary.html	2023-08-21 20:27:48.000000000 +0000
+++ /Users/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/firestore/package-summary.html	2023-08-21 20:22:33.000000000 +0000
@@ -195,6 +195,12 @@
             <td></td>
           </tr>
           <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheIndexManager.html">PersistentCacheIndexManager</a></code></td>
+            <td>
+              <p>A <code>PersistentCacheIndexManager</code> which you can config persistent cache indexes used for local query execution.</p>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="/docs/reference/kotlin/com/google/firebase/firestore/PersistentCacheSettings.html">PersistentCacheSettings</a></code></td>
             <td>
               <p>Configures the SDK to use a persistent cache.</p>

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 17, 2023

Coverage Report 1

Affected Products

  • firebase-firestore

    Overall coverage changed from 44.64% (dff55b6) to 44.61% (6ed0acb) by -0.02%.

    FilenameBase (dff55b6)Merge (6ed0acb)Diff
    LruGarbageCollector.java97.27%93.64%-3.64%
    PatchMutation.java100.00%98.39%-1.61%
    QueryEngine.java99.02%99.00%-0.02%

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/HJfUHPRoCY.html

@github-actions
Copy link
Contributor

github-actions bot commented Aug 17, 2023

Unit Test Results

   164 files   -    656     164 suites   - 656   2m 55s ⏱️ - 35m 53s
1 205 tests  - 3 797  1 189 ✔️  - 3 791  16 💤  -   5  0  - 1 
2 410 runs   - 7 503  2 378 ✔️  - 7 492  32 💤  - 10  0  - 1 

Results for commit b49664d. ± Comparison against base commit f2a0fa3.

♻️ This comment has been updated with latest results.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 17, 2023

Startup Time Report 1

Note: Layout is sometimes suboptimal due to limited formatting support on GitHub. Please check this report on GCS.

Startup time comparison between the CI merge commit (6ed0acb) and the base commit (dff55b6) are not available.

No macrobenchmark data found for the base commit (dff55b6). Analysis for the CI merge commit (6ed0acb) can be found at:

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/wBS2r1xg9g/index.html

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 17, 2023

Size Report 1

Affected Products

  • firebase-firestore

    TypeBase (dff55b6)Merge (6ed0acb)Diff
    aar1.36 MB1.36 MB-79 B (-0.0%)
    apk (release)3.95 MB3.95 MB-28 B (-0.0%)

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/63KwzOWGPd.html

@cherylEnkidu cherylEnkidu merged commit 6349a09 into master Aug 31, 2023
@cherylEnkidu cherylEnkidu deleted the cheryllin/publicCSI branch August 31, 2023 18:10
limsaehyun pushed a commit to limsaehyun/firebase-android-sdk that referenced this pull request Sep 5, 2023
@daymxn daymxn mentioned this pull request Sep 8, 2023
daymxn added a commit that referenced this pull request Sep 8, 2023
Per [b/299650417](https://b.corp.google.com/issues/299650417),

This bumps `firebase-firestore` by a minor version, as should've been
done by the deprecation of a public method in #5256.
@firebase firebase locked and limited conversation to collaborators Oct 1, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants