The article covers it pretty well.
- SystemModStamp is strictly read-only. Not only is it updated when a user updates the record, but also when automated system processes update the record. Because of this behavior, it creates a difference in stored value where
LastModifiedDate <= SystemModStamp
but never LastModifiedDate > SystemModStamp
The key is:
SystemModStamp
can be greater (i.e., a later date) than LastModifiedDate
.
So let's say you have a record with these values:
LastModifiedDate = 2016-07-21 12:46:00
SystemModStamp = 2016-07-21 13:30:00
In this case, you have:
records that fall in between the two timestamps
Using the above example, let's say you want to use a query filter like:
LastModifiedDate < 2016-07-21T13:00:00Z
The filter date is between the two Datetime
values. If the query optimizer uses SystemModStamp
as a proxy for LastModifiedDate
, the record described above will not be found. So the optimizer will not do any indexing because, while it would improve performance, it would cause incomplete results.