@@ -81,9 +81,10 @@ pub(crate) fn table_changes_action_iter(
81
81
/// phase, so we must perform it ahead of time in phase 1.
82
82
/// - Ensure that reading is supported on any protocol updates.
83
83
/// - Extract the in-commit timestamps from [`CommitInfo`] actions if they are present. These are
84
- /// generated when in-commit timestamps table feature is enabled. This must be done in the
84
+ /// generated when in-commit timestamps (ICT) table feature is enabled. This must be done in the
85
85
/// first phase because the second phase lazily transforms engine data with an extra timestamp
86
- /// column, so the timestamp must be known ahead of time.
86
+ /// column, so the timestamp must be known ahead of time. Note that when ICT is enabled, CommitInfo
87
+ /// should be the first action in every commit.
87
88
/// See: https://github.com/delta-io/delta/blob/master/PROTOCOL.md#in-commit-timestamps
88
89
/// - Ensure that Change Data Feed is enabled for any metadata update. See [`TableProperties`]
89
90
/// - Ensure that any schema update is compatible with the provided `schema`. Currently, schema
@@ -119,8 +120,8 @@ struct LogReplayScanner {
119
120
// The commit file that this replay scanner will operate on.
120
121
commit_file : ParsedLogPath ,
121
122
// The timestamp associated with this commit. This is the file modification time
122
- // from the commit's [`FileMeta`]. If there is a [`CommitInfo`] with a timestamp
123
- // generated by in-commit timestamps, that timestamp will be used instead .
123
+ // from the commit's [`FileMeta`]. If in-commit timestamps feature is enabled, this will be the
124
+ // in-commit timestamp from the [`CommitInfo`] action .
124
125
timestamp : i64 ,
125
126
}
126
127
0 commit comments