Re: [PATCH 00/28] Create a reference backend for packed refs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/19/2017 09:53 PM, Jeff King wrote:
> On Mon, Jun 19, 2017 at 03:43:15PM -0400, Jeff King wrote:
> 
>>>> Is the iterator over packed-refs correctly skipping over what are
>>>> covered by loose refs?  The entries in the packed-refs file that are
>>>> superseded by loose refs should be allowed to point at an already
>>>> expired object.
>>>
>>> Here it is in a test form for easier diagnosis.
>>
>> Thanks, I was just starting to do that myself. The problem is in
>> ca6b06eb7 (packed_ref_store: support iteration, 2017-05-15) and is
>> pretty obvious: the packed_ref iterator checks whether the entry
>> resolves.
>>
>> I think that _neither_ of the loose and packed iterators should be
>> checking this. It's only the merged result (where loose trumps packed)
>> that should bother checking.

Thanks for the bug report and the analysis, which is exactly right.

But I'd like to fix the problem a *little* differently than Peff
suggested. To keep `packed_ref_store` from deviating more than necessary
from the `ref_store` interface, I propose that we leave the code for
rejecting broken refs where it is, and instead invoke
`packed_ref_iterator_begin()` with the `DO_FOR_EACH_INCLUDE_BROKEN` flag.

I have prepared a re-roll of the patch series, but I can't submit it
until I have Junio's signoff on the test that he suggested [1]. Junio?

Thanks,
Michael

[1]
http://public-inbox.org/git/xmqqvanrsru4.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxx/




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux