git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Strange reachability inconsistency (apparently, at least...)
       [not found] <144640746.551672305.1424355582540.JavaMail.root@zimbra39-e7.priv.proxad.net>
@ 2015-02-19 15:03 ` ydirson
  2015-02-22 23:30   ` Junio C Hamano
  0 siblings, 1 reply; 3+ messages in thread
From: ydirson @ 2015-02-19 15:03 UTC (permalink / raw)
  To: git list; +Cc: dirson, poulot, ydirson

I have a (fsck-clean) git tree in which for 2 commits A and B:

* "git merge-base --is-ancestor A B" returns 0
* "git log B..A" returns a non-empty set of commits

I get this behaviour with 2.3.0 as well as with 2.1.3 and 1.7.12.

Is that a real bug or am I just misinterpreting something ?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Strange reachability inconsistency (apparently, at least...)
  2015-02-19 15:03 ` Strange reachability inconsistency (apparently, at least...) ydirson
@ 2015-02-22 23:30   ` Junio C Hamano
  2015-02-23  6:44     ` Junio C Hamano
  0 siblings, 1 reply; 3+ messages in thread
From: Junio C Hamano @ 2015-02-22 23:30 UTC (permalink / raw)
  To: ydirson; +Cc: git list, dirson, poulot

On Thu, Feb 19, 2015 at 7:03 AM,  <ydirson@free.fr> wrote:
> I have a (fsck-clean) git tree in which for 2 commits A and B:
>
> * "git merge-base --is-ancestor A B" returns 0
> * "git log B..A" returns a non-empty set of commits
>
> I get this behaviour with 2.3.0 as well as with 2.1.3 and 1.7.12.
>
> Is that a real bug or am I just misinterpreting something ?

Sounds strange. Is it possible to share the repository (or an
anonymised copy of it)?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Strange reachability inconsistency (apparently, at least...)
  2015-02-22 23:30   ` Junio C Hamano
@ 2015-02-23  6:44     ` Junio C Hamano
  0 siblings, 0 replies; 3+ messages in thread
From: Junio C Hamano @ 2015-02-23  6:44 UTC (permalink / raw)
  To: ydirson; +Cc: git list, dirson, poulot

Junio C Hamano <gitster@pobox.com> writes:

> On Thu, Feb 19, 2015 at 7:03 AM,  <ydirson@free.fr> wrote:
>> I have a (fsck-clean) git tree in which for 2 commits A and B:
>>
>> * "git merge-base --is-ancestor A B" returns 0
>> * "git log B..A" returns a non-empty set of commits
>>
>> I get this behaviour with 2.3.0 as well as with 2.1.3 and 1.7.12.
>>
>> Is that a real bug or am I just misinterpreting something ?
>
> Sounds strange. Is it possible to share the repository (or an
> anonymised copy of it)?

Actually it does not sound all that strange.

I suspect that B is indeed a proper descendant of A, but you have
commits with screwed-up committer timestamps between these two
commits that break the cut-off heuristic used by log and reb-list.

Grab the output from "git rev-list B..A".  These are supposed to be
ahead of B (i.e. should not be reachable from B).  Then look at the
output from "git log B" (no lower bound) and see if these commits
appear there, perhaps like:

    $ git rev-list B..A | sed -e 's/^/^/' >phantoms
    $ git log --format='%H %ct' B | grep -C2 -f phantoms

Hits from the latter "grep" would indicate that what the traversal
B..A claimed that are not reachable from B contained some commits
that are indeed reachable from B.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-02-23  6:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <144640746.551672305.1424355582540.JavaMail.root@zimbra39-e7.priv.proxad.net>
2015-02-19 15:03 ` Strange reachability inconsistency (apparently, at least...) ydirson
2015-02-22 23:30   ` Junio C Hamano
2015-02-23  6:44     ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).