You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Deletion through TTL is not an instantaneous process. Expired documents continue to appear in queries and lookup requests until the TTL process actually deletes them. TTL trades deletion timeliness for the benefit of reduced total cost of ownership for deletions. Data is typically deleted within 72 hours after its expiration date.
A regression was introduced because we don't reset expiresAt when document is replaced:
Problem
In version 2.0, we introduced a client-side
expiresAt
check inIDatabase
'sGet
to ensure that expired documents don't get returned:ltijs-firestore/src/Firestore.ts
Line 90 in d84b5d6
This client-side check is required because Firestore's TTL's deletion time in non-deterministic. Excerpt: https://firebase.google.com/docs/firestore/ttl#ttl_deletion
A regression was introduced because we don't reset
expiresAt
when document is replaced:ltijs-firestore/src/Firestore.ts
Line 217 in d84b5d6
This means that a fresh document can be updated for an existing but expired document. Such document will not be returned by
Get
. So in other words:expiresAt
doesn't get extendedexpiresAt
dateRequirement
Reset timestamps (including
expiresAt
) in Replace:ltijs-firestore/src/Firestore.ts
Line 217 in d84b5d6
The text was updated successfully, but these errors were encountered: