Skip to content
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

Replace Collection.emptyMap() with new HashMap() #5573

Merged
merged 3 commits into from
Dec 12, 2023

Conversation

milaGGL
Copy link
Contributor

@milaGGL milaGGL commented Nov 23, 2023

Fix: #5571

Copy link
Contributor

github-actions bot commented Nov 23, 2023

Release note changes

The following release notes were modified. Please ensure they look correct.

Release Notes
firebase-firestore
### {{firestore}} version 24.10.1 {: #firestore_v24-10-1}

* {{fixed}} Fixed an issue caused by calling mutation on immutable map object. GitHub [#5573](//github.com/firebase/firebase-android-sdk/issues/5573){: .external}

* {{fixed}} Fixed an issue in the local cache synchronization logic where all locally-cached documents that matched a resumed query would be unnecessarily re-downloaded; with the fix it now only downloads the documents that are known to be out-of-sync. GitHub [#5506](//github.com/firebase/firebase-android-sdk/issues/5506){: .external}

* {{fixed}} Fixed an issue where GC runs into a infinite loop in a certain case. GitHub [#5417](//github.com/firebase/firebase-android-sdk/issues/5417){: .external}

#### {{firestore}} Kotlin extensions version 24.10.1 {: #firestore-ktx_v24-10-1}

The Kotlin extensions library transitively includes the updated
`firebase-firestore` library. The Kotlin extensions library has no additional
updates.

Copy link
Contributor

📝 PRs merging into main branch

Our main branch should always be in a releasable state. If you are working on a larger change, or if you don't want this change to see the light of the day just yet, consider using a feature branch first, and only merge into the main branch when the code complete and ready to be released.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Nov 23, 2023

Coverage Report 1

Affected Products

  • firebase-firestore

    Overall coverage changed from 44.77% (ac19e5d) to 44.77% (364ca5c) by +0.00%.

    FilenameBase (ac19e5d)Merge (364ca5c)Diff
    SetMutation.java94.44%97.22%+2.78%

Test Logs

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

Copy link
Contributor

github-actions bot commented Nov 23, 2023

Unit Test Results

   180 files  +   174     180 suites  +174   4m 0s ⏱️ + 3m 41s
1 226 tests +1 207  1 210 ✔️ +1 191  16 💤 +16  0 ±0 
2 476 runs  +2 438  2 444 ✔️ +2 406  32 💤 +32  0 ±0 

Results for commit 3539251. ± Comparison against base commit ac19e5d5.

This pull request removes 19 and adds 1226 tests. Note that renamed tests count towards both.
com.google.firebase.crashlytics.internal.common.CrashlyticsControllerRobolectricTest ‑ testDoCloseSession_disabledAnrs_doesNotPersistsAppExitInfo
com.google.firebase.crashlytics.internal.common.CrashlyticsControllerRobolectricTest ‑ testDoCloseSession_enabledAnrs_doesNotPersistsAppExitInfoIfItDoesntExist
com.google.firebase.crashlytics.internal.common.CrashlyticsControllerRobolectricTest ‑ testDoCloseSession_enabledAnrs_persistsAppExitInfoIfItExists
com.google.firebase.crashlytics.internal.common.SessionReportingCoordinatorRobolectricTest ‑ testAppExitInfoEvent_notPersistIfAnrBeforeSession
com.google.firebase.crashlytics.internal.common.SessionReportingCoordinatorRobolectricTest ‑ testAppExitInfoEvent_notPersistIfAppExitInfoNotAnrButWithinSession
com.google.firebase.crashlytics.internal.common.SessionReportingCoordinatorRobolectricTest ‑ testAppExitInfoEvent_persistIfAnrWithinSession
com.google.firebase.crashlytics.internal.common.SessionReportingCoordinatorRobolectricTest ‑ testAppExitInfoEvent_persistIfAnrWithinSession_multipleAppExitInfo
com.google.firebase.crashlytics.internal.common.SessionReportingCoordinatorRobolectricTest ‑ testconvertInputStreamToString_worksSuccessfully
com.google.firebase.crashlytics.internal.model.CrashlyticsReportTest ‑ testGetBinaryImageUuidUtf8Bytes_returnsNullWhenUuidIsNull
com.google.firebase.crashlytics.internal.model.CrashlyticsReportTest ‑ testGetBinaryImageUuidUtf8Bytes_returnsProperBytes
…
com.google.firebase.TimestampTest ‑ testCompare
com.google.firebase.TimestampTest ‑ testFromDate
com.google.firebase.TimestampTest ‑ testRejectBadDates
com.google.firebase.TimestampTest ‑ testTimestampParcelable
com.google.firebase.firestore.AggregateQuerySnapshotTest ‑ createWithCountShouldReturnInstanceWithTheGivenQueryAndCount
com.google.firebase.firestore.AggregateQueryTest ‑ testSourceMustNotBeNull
com.google.firebase.firestore.BlobTest ‑ testComparison
com.google.firebase.firestore.BlobTest ‑ testEquals
com.google.firebase.firestore.BlobTest ‑ testMutableBytes
com.google.firebase.firestore.CollectionReferenceTest ‑ testEquals
…

♻️ This comment has been updated with latest results.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Nov 23, 2023

Size Report 1

Affected Products

  • firebase-firestore

    TypeBase (ac19e5d)Merge (364ca5c)Diff
    aar1.41 MB1.41 MB-23 B (-0.0%)

Test Logs

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

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Nov 23, 2023

Startup Time Report 1

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

Notes

Startup Times

  • fire-fst

    DeviceStatisticsDistributions
    oriole-32
    Percentileac19e5d364ca5cDiffSignificant (?)
    p10415 ±216 μs464 ±241 μs+48.6 μs (+11.7%)NO
    p25435 ±218 μs477 ±242 μs+42.9 μs (+9.9%)NO
    p50463 ±222 μs501 ±245 μs+38.6 μs (+8.3%)NO
    p75516 ±225 μs559 ±239 μs+42.7 μs (+8.3%)NO
    p90596 ±225 μs642 ±245 μs+45.9 μs (+7.7%)NO

    20 test runs in comparison
    CommitTest Runs
    ac19e5d
    • 2023-12-11_17:57:32.684838_NfMM
    • 2023-12-11_17:57:32.684869_uoQk
    • 2023-12-11_17:57:32.684878_oVGz
    • 2023-12-11_17:57:32.684888_osqN
    • 2023-12-11_17:57:32.684896_UMRH
    • 2023-12-11_17:57:32.684904_AWOJ
    • 2023-12-11_17:57:32.684913_CIBN
    • 2023-12-11_17:57:32.684922_VxRn
    • 2023-12-11_17:57:32.684929_WOyY
    • 2023-12-11_17:57:32.684936_prLf
    364ca5c
    • 2023-12-12_15:01:09.755707_fGAy
    • 2023-12-12_15:01:09.755737_jTMe
    • 2023-12-12_15:01:09.755750_Csjz
    • 2023-12-12_15:01:09.755759_mdwa
    • 2023-12-12_15:01:09.755767_tZWF
    • 2023-12-12_15:01:09.755775_NkZn
    • 2023-12-12_15:01:09.755782_GSOC
    • 2023-12-12_15:01:09.755789_JKFm
    • 2023-12-12_15:01:09.755796_RFFH
    • 2023-12-12_15:01:09.755803_ywkB
    redfin-30
    Percentileac19e5d364ca5cDiffSignificant (?)
    p10702 ±247 μs866 ±263 μs+164 μs (+23.3%)NO
    p25724 ±259 μs887 ±257 μs+163 μs (+22.5%)NO
    p50804 ±393 μs917 ±248 μs+113 μs (+14.0%)NO
    p75894 ±482 μs957 ±243 μs+62.9 μs (+7.0%)NO
    p90945 ±510 μs1.02 ±0.2 ms+79.6 μs (+8.4%)NO

    20 test runs in comparison
    CommitTest Runs
    ac19e5d
    • 2023-12-11_17:57:32.684838_NfMM
    • 2023-12-11_17:57:32.684869_uoQk
    • 2023-12-11_17:57:32.684878_oVGz
    • 2023-12-11_17:57:32.684888_osqN
    • 2023-12-11_17:57:32.684896_UMRH
    • 2023-12-11_17:57:32.684904_AWOJ
    • 2023-12-11_17:57:32.684913_CIBN
    • 2023-12-11_17:57:32.684922_VxRn
    • 2023-12-11_17:57:32.684929_WOyY
    • 2023-12-11_17:57:32.684936_prLf
    364ca5c
    • 2023-12-12_15:01:09.755707_fGAy
    • 2023-12-12_15:01:09.755737_jTMe
    • 2023-12-12_15:01:09.755750_Csjz
    • 2023-12-12_15:01:09.755759_mdwa
    • 2023-12-12_15:01:09.755767_tZWF
    • 2023-12-12_15:01:09.755775_NkZn
    • 2023-12-12_15:01:09.755782_GSOC
    • 2023-12-12_15:01:09.755789_JKFm
    • 2023-12-12_15:01:09.755796_RFFH
    • 2023-12-12_15:01:09.755803_ywkB
  • timeToInitialDisplay

    DeviceStatisticsDistributions
    oriole-32
    Percentileac19e5d364ca5cDiffSignificant (?)
    p10204 ±4 ms207 ±2 ms+2.98 ms (+1.5%)NO
    p25211 ±5 ms214 ±2 ms+2.74 ms (+1.3%)NO
    p50218 ±5 ms223 ±4 ms+4.36 ms (+2.0%)NO
    p75227 ±5 ms231 ±5 ms+3.84 ms (+1.7%)NO
    p90236 ±6 ms243 ±7 ms+6.82 ms (+2.9%)NO

    20 test runs in comparison
    CommitTest Runs
    ac19e5d
    • 2023-12-11_17:57:32.684838_NfMM
    • 2023-12-11_17:57:32.684869_uoQk
    • 2023-12-11_17:57:32.684878_oVGz
    • 2023-12-11_17:57:32.684888_osqN
    • 2023-12-11_17:57:32.684896_UMRH
    • 2023-12-11_17:57:32.684904_AWOJ
    • 2023-12-11_17:57:32.684913_CIBN
    • 2023-12-11_17:57:32.684922_VxRn
    • 2023-12-11_17:57:32.684929_WOyY
    • 2023-12-11_17:57:32.684936_prLf
    364ca5c
    • 2023-12-12_15:01:09.755707_fGAy
    • 2023-12-12_15:01:09.755737_jTMe
    • 2023-12-12_15:01:09.755750_Csjz
    • 2023-12-12_15:01:09.755759_mdwa
    • 2023-12-12_15:01:09.755767_tZWF
    • 2023-12-12_15:01:09.755775_NkZn
    • 2023-12-12_15:01:09.755782_GSOC
    • 2023-12-12_15:01:09.755789_JKFm
    • 2023-12-12_15:01:09.755796_RFFH
    • 2023-12-12_15:01:09.755803_ywkB
    redfin-30
    Percentileac19e5d364ca5cDiffSignificant (?)
    p10250 ±3 ms273 ±5 ms+23.4 ms (+9.3%)YES
    p25256 ±3 ms280 ±5 ms+23.3 ms (+9.1%)MAYBE
    p50263 ±3 ms288 ±5 ms+24.9 ms (+9.4%)YES
    p75273 ±3 ms299 ±6 ms+26.5 ms (+9.7%)MAYBE
    p90283 ±4 ms314 ±8 ms+31.3 ms (+11.1%)MAYBE

    20 test runs in comparison
    CommitTest Runs
    ac19e5d
    • 2023-12-11_17:57:32.684838_NfMM
    • 2023-12-11_17:57:32.684869_uoQk
    • 2023-12-11_17:57:32.684878_oVGz
    • 2023-12-11_17:57:32.684888_osqN
    • 2023-12-11_17:57:32.684896_UMRH
    • 2023-12-11_17:57:32.684904_AWOJ
    • 2023-12-11_17:57:32.684913_CIBN
    • 2023-12-11_17:57:32.684922_VxRn
    • 2023-12-11_17:57:32.684929_WOyY
    • 2023-12-11_17:57:32.684936_prLf
    364ca5c
    • 2023-12-12_15:01:09.755707_fGAy
    • 2023-12-12_15:01:09.755737_jTMe
    • 2023-12-12_15:01:09.755750_Csjz
    • 2023-12-12_15:01:09.755759_mdwa
    • 2023-12-12_15:01:09.755767_tZWF
    • 2023-12-12_15:01:09.755775_NkZn
    • 2023-12-12_15:01:09.755782_GSOC
    • 2023-12-12_15:01:09.755789_JKFm
    • 2023-12-12_15:01:09.755796_RFFH
    • 2023-12-12_15:01:09.755803_ywkB

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

@milaGGL milaGGL changed the title replace Collection.emptyMap() with new HashMap() Replace Collection.emptyMap() with new HashMap() Nov 24, 2023
@princebansal
Copy link

Any updates on this when will this be merged?

@milaGGL milaGGL marked this pull request as ready for review December 12, 2023 14:48
@milaGGL milaGGL merged commit 3d88f62 into master Dec 12, 2023
25 of 26 checks passed
@milaGGL milaGGL deleted the mila/fix-mutation-on-emptyMap branch December 12, 2023 20:35
@firebase firebase locked and limited conversation to collaborators Jan 12, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

firebase-firestore-SDK causing an application to crash.
4 participants