Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-10 Thread Derrick Stolee
On 5/9/2019 5:45 PM, Ævar Arnfjörð Bjarmason wrote: > > On Thu, May 09 2019, Derrick Stolee wrote: > >> How far apart can these concurrency issues happen in the file system? >> One benefit to Option 0 is that there is only one file _write_ that matters. >> The other options require at least two w

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-09 Thread Ævar Arnfjörð Bjarmason
On Thu, May 09 2019, Derrick Stolee wrote: > On 5/9/2019 11:48 AM, Ævar Arnfjörð Bjarmason wrote: >> >> On Thu, May 09 2019, Derrick Stolee wrote: >> [snip] >>> >>> I still don't think this is a problem, with the idea below. >>> > 4. It would be helpful to add a new optional chunk that cont

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-09 Thread Derrick Stolee
On 5/9/2019 11:48 AM, Ævar Arnfjörð Bjarmason wrote: > > On Thu, May 09 2019, Derrick Stolee wrote: > [snip] >> >> I still don't think this is a problem, with the idea below. >> 4. It would be helpful to add a new optional chunk that contains the trailing hash for the lower level of

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-09 Thread Ævar Arnfjörð Bjarmason
On Thu, May 09 2019, Derrick Stolee wrote: Not a very detailed reply since I've gotta run soon, but figured I'd send something (also given our timezone difference). > On 5/8/2019 4:11 PM, Ævar Arnfjörð Bjarmason wrote: >> >> On Wed, May 08 2019, Derrick Stolee wrote: >> >>> I'll ignore the impr

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-09 Thread Derrick Stolee
On 5/8/2019 4:11 PM, Ævar Arnfjörð Bjarmason wrote: > > On Wed, May 08 2019, Derrick Stolee wrote: > >> I'll ignore the improbability of this turn of events (two writes happening >> during the span of trying to read two files) and focus on the fact that >> we can prevent issues here using the 4th

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-09 Thread Derrick Stolee
On 5/9/2019 12:49 AM, Junio C Hamano wrote: > Ævar Arnfjörð Bjarmason writes: > >> With commit-graph- all these unlink() race conditions go away, >> partial reads due to concurrent graph writing becomes a non-issue (we'd >> just leave the old files, "gc" deals with them later..), no need to >> ca

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-08 Thread Junio C Hamano
Ævar Arnfjörð Bjarmason writes: > With commit-graph- all these unlink() race conditions go away, > partial reads due to concurrent graph writing becomes a non-issue (we'd > just leave the old files, "gc" deals with them later..), no need to > carefully fsync() files/dirs etc as we need to careful

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-08 Thread Derrick Stolee
On 5/8/2019 1:20 PM, SZEDER Gábor wrote: > On Wed, May 08, 2019 at 08:53:57AM -0700, Derrick Stolee via GitGitGadget > wrote: >> From: Derrick Stolee > Consider the following sequence of events: > > 1. There are three commit-graph files in the repository. > > 2. A git process opens the base

Re: [PATCH 12/17] Documentation: describe split commit-graphs

2019-05-08 Thread SZEDER Gábor
On Wed, May 08, 2019 at 08:53:57AM -0700, Derrick Stolee via GitGitGadget wrote: > From: Derrick Stolee > > The design for the split commit-graphs uses file names to force > a "stack" of commit-graph files. This allows incremental writes > without updating the file format. > > Signed-off-by: Der

[PATCH 12/17] Documentation: describe split commit-graphs

2019-05-08 Thread Derrick Stolee via GitGitGadget
From: Derrick Stolee The design for the split commit-graphs uses file names to force a "stack" of commit-graph files. This allows incremental writes without updating the file format. Signed-off-by: Derrick Stolee --- Documentation/technical/commit-graph.txt | 142 +++ 1 fil