delta-io/delta

[Kernel] Remove unecessary N.json loading for InCommitTimestamp value

Open

#4 914 ouverte le 10 juil. 2025

Voir sur GitHub
 (3 commentaires) (0 réactions) (0 assignés)Scala (2 100 forks)batch import
good first issuekernel

Métriques du dépôt

Stars
 (8 807 stars)
Métriques de merge PR
 (Merge moyen 7j 1h) (142 PRs mergées en 30 j)

Description

Today, Kernel will issue a cloud read request to read the Snapshot's latest N.json file, in order to read the in-commit-timestamp value from the CommitInfo action.

We should be able to remove such a cloud call (in 99.99% of cases). The basis for this is the following:

  • To get a Snapshot, we must resolve the latest Protocol and Metadata
  • We can get the latest P & M in one of two ways
  • First, by reading a .crc file. If so, the ICT value should be in there. (If not, we have to make the N.json cloud request later on)
  • Second, by reading the delta log .json files until we find the latest P & M. Even if the latest P & M are found in the latest N.json file, when ICT is enabled we require that the CommitInfo action is the first action written into such a file -- so we can guarantee we find it either way

Guide contributeur