Online, Asynchronous Schema Change in F1

As part of my effort to develop layer using Tokio/Rust bindings I recently spent sometime time trying to understand this paper.

It seems to be a seminal paper whose approach has been adopted by other databases such as CockroachDB and TiDB.

I found the paper very interesting especially in the way it forces us to think if a given set of key-value pairs is consistent with a Schema invariants and also giving proper terminology for the anomalies that might occur with various operations.

However, while reading the paper, I was unable to find a proper definition for an “optional structural element”.

I was wondering if anybody here might have insights on when a schema element would be considered “optional” vs. “required”?