InitialSnapshot is an initial Snapshot of a delta table (at the logPath) that is about to be created (so there is no delta log yet).
InitialSnapshot is a Snapshot with the following:
|LogSegment||Empty transaction log directory (for the logPath)|
InitialSnapshot takes the following to be created:
- Path (Apache Hadoop) of the Transaction Log
InitialSnapshot is created when:
SnapshotManagementis requested to createSnapshotAtInitInternal and installLogSegmentInternal
ConvertToDeltaCommandBaseis requested to createDeltaActions
InitialSnapshot can be given a Metadata when created. Unless given,
InitialSnapshot creates a Metadata with the following:
|createdTime||Current time (in ms)|
computedState is part of the Snapshot abstraction.
computedState is a Scala lazy value to guarantee that the code to initialize it is executed once only (when accessed for the first time) and the computed value never changes afterwards.
Learn more in the Scala Language Specification.
InitialSnapshot define the private initialState to initialize
computedState? They could be one, couldn't they?