From: Adam Simpkins <simpkins@facebook.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: "Git Mailing List" <git@vger.kernel.org>,
"Santi Béjar" <santi@agolina.net>
Subject: Re: [PATCH] graph API: fix bug in graph_is_interesting()
Date: Tue, 18 Aug 2009 19:29:18 -0700 [thread overview]
Message-ID: <20090819022918.GO8147@facebook.com> (raw)
In-Reply-To: <7vk5103chi.fsf@alter.siamese.dyndns.org>
On Tue, Aug 18, 2009 at 04:53:45PM -0700, Junio C Hamano wrote:
> Adam Simpkins <simpkins@facebook.com> writes:
>
> > - return (commit->object.flags & (UNINTERESTING | TREESAME)) ? 0 : 1;
> > + return simplify_commit(graph->revs, commit) == commit_show;
>
> If you do this after revision.c finished the traversal (e.g. "limited"
> case), I think it should be Ok.
>
> But calling simplify_commit() while the traversal is still in progress is
> asking for trouble. I do not recall the details anymore but when I tried
> to make the "simplify-merges" algorithm incremental, I had seen funny
> breakage caused by calling simplify_commit() twice on the same commit.
>
> I suspect that this change will break the primary traversal.
The --graph option always enables revs->topo_order, which in turn
enables revs->limited, so this should always be after limit_list() has
already been called.
However, it looks like the call to rewrite_parents() is the only
modifying operation in simplify_commit(), and all the rest can easily
be split out into a separate helper function. I'll submit another
version of the patch that makes the non-modifying simplify_commit()
behavior available as a separate function.
--
Adam Simpkins
simpkins@facebook.com
next prev parent reply other threads:[~2009-08-19 2:29 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-18 20:55 interaction between --graph and --simplify-by-decoration Adam Simpkins
2009-08-18 21:18 ` [PATCH] graph API: fix bug in graph_is_interesting() Adam Simpkins
2009-08-18 23:53 ` Junio C Hamano
2009-08-19 2:29 ` Adam Simpkins [this message]
2009-08-19 2:34 ` Adam Simpkins
2009-08-19 6:18 ` Junio C Hamano
2009-08-19 6:25 ` Junio C Hamano
2009-08-19 22:55 ` Adam Simpkins
2009-08-19 22:58 ` [PATCH] Add test case for rev-list --parents --show-all Adam Simpkins
2009-08-20 4:13 ` Junio C Hamano
2009-08-21 18:20 ` [PATCH] Add tests for rev-list --graph with options that simplify history Adam Simpkins
2009-08-21 20:15 ` Junio C Hamano
2009-08-21 21:23 ` Adam Simpkins
2009-08-21 15:39 ` [PATCH] graph API: fix bug in graph_is_interesting() Santi Béjar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090819022918.GO8147@facebook.com \
--to=simpkins@facebook.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=santi@agolina.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.