git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 3/3] t1700: make sure split-index respects core.sharedrepository

From
Christian Couder <christian.couder@gmail.com>
Date
Jun 25, 2017, 04:39 UTC
Message-ID
<CAP8UFD2QV-HkL+nwq+gvwE9V6TbuacioJwmcztNqGmF913Bo2A@mail.gmail.com>
In-Reply-To
<xmqqwp82bb39.fsf@gitster.mtv.corp.google.com>
On Sat, Jun 24, 2017 at 12:20 AM, Junio C Hamano <gitster@pobox.com> wrote:
Show 22 quoted lines
> Christian Couder <christian.couder@gmail.com> writes:
>
>> Add a few tests to check that both the split-index file and the
>> shared-index file are created using the right permissions when
>> core.sharedrepository is set.
>>
>> Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
>> ---
>>  t/t1700-split-index.sh | 17 +++++++++++++++++
>>  1 file changed, 17 insertions(+)
>>
>> diff --git a/t/t1700-split-index.sh b/t/t1700-split-index.sh
>> index af3ec0da5a..2c5be732e4 100755
>> --- a/t/t1700-split-index.sh
>> +++ b/t/t1700-split-index.sh
>> @@ -370,4 +370,21 @@ test_expect_success 'check splitIndex.sharedIndexExpire set to "never" and "now"
>>       test $(ls .git/sharedindex.* | wc -l) -le 2
>>  '
>>
>> +while read -r mode modebits filename; do
>
> Style.
Fixed in the version (v3) I just sent.
Show 6 quoted lines
> Running this twice in a loop would create two .git/sharedindex.*
> files in quick succession.  I do not think we want to assume that
> the filesystem timestamp can keep up with us to allow "ls -t" to
> work reliably in the second round (if there is a leftover shared
> index from previous test, even the first round may not catch the
> latest one).
Yeah, it might be a problem on some systems.
Show 30 quoted lines
> How about doing each iteration this way instead?  Which might be a
> better solution to work around that.
>
>     - with core.sharedrepository set to false, force the index to be
>       unsplit; "index" will have the default unshared permission
>       bits (but we do not care what it is and no need to check it).
>
>     - remove any leftover sharedindex.*, if any.
>
>     - with core.sharedrepository set to whatever mode being tested,
>       do the adding to force split.
>
>     - test the permission of index file.
>
>     - test the permission of sharedindex.* file; there should be
>       only one instance, so erroring out when we see two or more is
>       also a good test.
>
> The last two steps may look like:
>
>         test_modebits .git/index >actual && test_cmp expect actual &&
>         shared=$(ls .git/sharedindex.*) &&
>         case "$shared" in
>         *" "*)
>                 # we have more than one???
>                 false ;;
>         *)
>                 test_modebits "shared" >actual &&
>                 test_cmp expect actual ;;
>         esac
Ok, it does what you suggest in v3.
Thanks.
Previous: Junio C HamanoNext: Junio C Hamano
Message 5 of 8 in “read-cache: use shared perms when writing shared index”
  1. 1/3 read-cache: use shared perms when writing shared indexChristian Couder, Jun 23, 2017
  2. 2/3 t1301: move modebits() to test-lib-functions.shChristian Couder, Jun 23, 2017
  3. 3/3 t1700: make sure split-index respects core.sharedrepositoryChristian Couder, Jun 23, 2017
  4. Junio C HamanoJun 23, 2017
  5. Christian CouderJun 25, 2017
  6. Junio C HamanoJun 23, 2017
  7. Junio C HamanoJun 23, 2017
  8. Christian CouderJun 25, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.