mirror of
https://github.com/dolthub/dolt.git
synced 2026-02-05 10:31:30 -06:00
We've been keeping some special-case code in Datastore to handle the situation where the Root of the store is nonexistent. There was some checking for the empty Ref and creating a SetOfCommit out of whole cloth. This meant that if you asked an empty Datastore (or Dataset) what its Heads() were, it would give you back a Value that wasn't backed by a Chunk in its underlying ChunkStore. This caused some issues with pull code, so we decided to change things such that a DataStore is primed with an initial empty SetOfCommit upon creation. This means creating a Dataset in a DataStore now shows up in DataStore history, which it did not before. Essentially, every Dataset now has an "initial commit" of an empty SetOfCommit when it's created. I think that having these show up as part of the DataStore history makes sense, but the model may evolve over time.