You reason to not directly expose it and not include it in default query is perfectly fine, but I just want to able to indexed with custom index we created. We can't query with orderby or lessthan/morethan from the default index anyway
And also we don't query timestamp with Equal operator anyway. But it really precious if we could query every timeStamp with inequality operator
The problem is, if we would not have write the field timeStamp in from the start. When we want to update all the document to have a field it missing, or validate all document to have new format, it hardly be possible
Because we don't have a field we could query for it yet and firestore CANNOT QUERY FOR MISSING FIELD (this is very crucial problem that I was contact bug request so many times already)
Suppose I already have 1 million document in the database, with no timeStamp field. And suddenly I want to update all document to have timeStamp field equal to creation time. What should I do?
I can query and batch update all document at most 500 documents at a time. And if I just list all document directly. When I was update half of documents in collection, it might be possible that there would be a new document that has no timestamp slip in with a key lessthan the half of it. While default firestore query just sort everything by the key. I have no reliable state that I could query or list the collection
Not to mention that both createTime and updateTime is already exist in the database like __name__ field that was also always used in every query. But you force us to duplicate that by our own just so we can index it is not efficient and not reliable. We could always rely on creationTime and updateTime of your server that it will update by the server and no one can mess with it unlike other field. So it more practical that we could not modified that field but still can index and query with it
By nature of firebase that we could have client update data in database on their own. There could be a lag in versioning of client logic. Especially in mobile app that might not rollout new version to all device at the same time. It would be better if we don't relying validation with logic for document with index on client
I am fine that you not expose it in our SDK what I said is that you should just expose the name of it so we can put that name at index creation console and query fieldpath
When we want to query data it would not be when it offline anyway
And as I said I think it is already there, just expose the name of it and we could use it now, simple as that