Skip to content

FileAction

FileAction is an extension of the Action abstraction for actions that can add or remove files.

Contract

Path

path: String

dataChange

dataChange: Boolean

Controls the transaction isolation level for committing a transaction

Isolation Level Description
SnapshotIsolation No data changes (dataChange is false for all FileActions to be committed)
Serializable  

There can be no RemoveFiles with dataChange enabled for appendOnly unmodifiable tables (or an UnsupportedOperationException is thrown).

dataChange Value When
false InMemoryLogReplay is requested to replay a version
true ConvertToDeltaCommand is executed (and requested to create an AddFile with the flag turned on)
Opposite of dataChange option WriteIntoDelta is requested to write (with dataChange option turned off for rearrange-only writes)

dataChange is used when:

Implementations

Sealed Trait

FileAction is a Scala sealed trait which means that all of the implementations are in the same compilation unit (a single file).


Last update: 2021-03-28