On 6/26/2020 9:44 AM, Abhishek Kumar wrote: > On 22.06.2020 at 13:40, Jakub Narębski wrote: >> On 22.06.2020 at 11:34, Abhishek Kumar wrote: >> >>> One of the remaining pre-requisites for implementing generation number >>> v2 was distinguishing between corrected commit dates with monotonically >>> increasing offsets and topological level without incrementing generation >>> number version. >>> >>> Two approaches were proposed [1]: >>> 1. New chunk for commit data (generation data chunk, "GDAT") >>> 2. Metadata/versioning chunk >> >> Actually in [1] there was also proposed another distinct approach, >> namely to 'rename' the "CDAT" chunk to something else, like "CDA2" >> (or proposed here "GDAT"). >> >> If I read the code correctly, with old Git if one of required chunks >> is missing then Git would continue work as if commit-graph was not >> present -- as opposed to current handling of unknown commit-graph >> file format version number, where Git would stop working with an >> error message. >> > > Actually, v2.21.0 (and possibly others) segfault when they encounter a > commit-graph without CDAT chunk. Yes, the CDAT chunk is absolutely necessary. It also includes data such as the commit-date, root tree id, and parent information. > With this, I presume "CDAT Chunk Replaced With Another Chunk" is no > longer feasible? "Replace" was never on the table (in my mind). Instead, we can consider _adding_ a new chunk that contains the generation number v2 data. Thanks, -Stolee