title: How can LastLoginDate be greater than SystemModstamp?
body: <p>I'm trying to replicate the Salesforce data in our database, using their REST API. There is <a href="https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/data_replication_steps.htm" rel="nofollow noreferrer">a general guide</a> on how to do this. But on <a href="https://help.salesforce.com/s/articleView?id=000335322&amp;type=1" rel="nofollow noreferrer">this page</a> they're saying that the get updated service would use the <code>SystemModStamp</code> field. I want to query the record, so a <code>SELECT * FROM sfObject WHERE SystemModStamp &gt; value of my last stored SystemModStamp</code> command would be more suitable.</p>
  <p>The strange thing is that it seems like the <code>SystemModStamp</code> is not updated each time when another field is updated. Is that possible? There is a User record, where the <code>SystemModStamp</code> remained the same (2022-01-25 21:30), but the <code>LastLoginDate</code> got updated (yesterday it was 2022-01-25 21:50, but this morning it was 2022-01-26 05:50, now it's 2022-01-26 15:20). Well if the user logged in thus the <code>LastLoginDate</code> is changed, why didn't the <code>SystemModStamp</code> changed too? This way my filter won't return the new last login timestamp. Nor the get update service if called with start = 2022-01-25 21:31.</p>
  <p>Surely I would be able to filter for <code>LastLoginDate</code> too. But is that enough? Why is there <code>SystemModStamp</code> (or if not available,  <code>LastModifiedDate</code>/<code>CreatedDate</code>) if it doesn't tell when was the record last changed? If I add all date fields to the filter, will I always get all changed records?</p>