Re: [PATCH 1/1] commit-reach: fix first-parent heuristic

2018-10-19 Thread Derrick Stolee
On 10/19/2018 1:24 AM, Junio C Hamano wrote: "Derrick Stolee via GitGitGadget" writes: We can also re-run the performance tests from commit 4fbcca4e "commit-reach: make can_all_from_reach... linear". Performance was measured on the Linux repository using 'test-tool reac

Re: [PATCH] multi-pack-index: make code -Wunused-parameter clean

2018-11-05 Thread Derrick Stolee
se nr_objects to make sure we don't walk too far. Signed-off-by: Jeff King Thanks, both, for catching this. I prefer the approach that adds defenses. Reviewed-by: Derrick Stolee --- midx.c | 12 +--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/midx.c b/midx.c ind

Re: [PATCH 5/9] handle alternates paths the same as the main object dir

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:49 AM, Jeff King wrote: When we generate loose file paths for the main object directory, the caller provides a buffer to loose_object_path (formerly sha1_file_name). The callers generally keep their own static buffer to avoid excessive reallocations. But for alternate

Re: [PATCH 8/9] sha1-file: use loose object cache for quick existence check

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:54 AM, Jeff King wrote: In cases where we expect to ask has_sha1_file() about a lot of objects that we are not likely to have (e.g., during fetch negotiation), we already use OBJECT_INFO_QUICK to sacrifice accuracy (due to racing with a simultaneous write or repack) for speed (we

Re: [PATCH 1/9] fsck: do not reuse child_process structs

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:46 AM, Jeff King wrote: The run-command API makes no promises about what is left in a struct child_process after a command finishes, and it's not safe to simply reuse it again for a similar command. In particular: - if you use child->args or child->env_array, they are cleared

Re: [PATCH 4/9] sha1_file_name(): overwrite buffer instead of appending

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:48 AM, Jeff King wrote: Since we're changing the semantics, let's take the opportunity to give it a more hash-neutral name (which will also catch any callers from topics in flight). THANK YOU! This method name confused me so much when I was first looking at the code, but the

Re: [PATCH 3/9] rename "alternate_object_database" to "object_directory"

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:48 AM, Jeff King wrote: In preparation for unifying the handling of alt odb's and the normal repo object directory, let's use a more neutral name. This patch is purely mechanical, swapping the type name, and converting any variables named "alt" to "odb". There should be no

Re: [PATCH 5/9] handle alternates paths the same as the main object dir

2018-11-12 Thread Derrick Stolee
On 11/12/2018 10:46 AM, Jeff King wrote: On Mon, Nov 12, 2018 at 10:38:28AM -0500, Derrick Stolee wrote: We could go either direction here, but this patch moves the alternates struct over to the main directory style (rather than vice-versa). Technically the alternates style is more

Re: [PATCH 6/9] sha1-file: use an object_directory for the main object dir

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:50 AM, Jeff King wrote: Our handling of alternate object directories is needlessly different from the main object directory. As a result, many places in the code basically look like this: do_something(r->objects->objdir); for (odb = r->objects->alt_odb_list; odb; odb =

Re: [PATCH 0/9] caching loose objects

2018-11-12 Thread Derrick Stolee
On 11/12/2018 9:46 AM, Jeff King wrote: Here's the series I mentioned earlier in the thread to cache loose objects when answering has_object_file(..., OBJECT_INFO_QUICK). For those just joining us, this makes operations that look up a lot of missing objects (like "index-pack" looking for

Re: [PATCH v5 02/12] sha1-file: provide functions to look up hash algorithms

2018-11-13 Thread Derrick Stolee
On 11/4/2018 6:44 PM, brian m. carlson wrote: +int hash_algo_by_name(const char *name) +{ + int i; + if (!name) + return GIT_HASH_UNKNOWN; + for (i = 1; i < GIT_HASH_NALGOS; i++) + if (!strcmp(name, hash_algos[i].name)) + return

Re: [PATCHv3 00/23] Bring more repository handles into our code base

2018-11-16 Thread Derrick Stolee
On 11/13/2018 7:12 PM, Stefan Beller wrote: Please have a look at the last 4 patches specifically as they were new in the last iteration (but did not receive any comment), as they demonstrate and fix a problem that is only exposed when using GIT_TEST_COMMIT_GRAPH=1 for the test suite. I took a

Re: [PATCH 0/1] send-pack: set core.warnAmbiguousRefs=false

2018-11-06 Thread Derrick Stolee
On 11/6/2018 2:51 PM, Jeff King wrote: On Tue, Nov 06, 2018 at 02:44:42PM -0500, Jeff King wrote: The fix for this is simple: set core.warnAmbiguousRefs to false for this specific call of git pack-objects coming from git send-pack. We don't want to default it to false for all calls to git

Re: [PATCH 0/1] send-pack: set core.warnAmbiguousRefs=false

2018-11-06 Thread Derrick Stolee
On 11/6/2018 2:44 PM, Jeff King wrote: On Tue, Nov 06, 2018 at 11:13:47AM -0800, Derrick Stolee via GitGitGadget wrote: I've been looking into the performance of git push for very large repos. Our users are reporting that 60-80% of git push time is spent during the "Enumerating objects&q

Git Test Coverage Report (Wednesday, Nov 7)

2018-11-07 Thread Derrick Stolee
UNINTERESTING; b45424181e 2954) return; b45424181e 2957) mark_parents_uninteresting(c); b45424181e 2980) return; b45424181e 2983) return; b45424181e 3048) continue; f0d9cc4196 3097) if (!revs->ignore_missing_links) f0d9cc4196 3098) die("Failed to traverse parents of commit %s", f0d9cc419

Git Test Coverage Report (Tuesday, Nov 13)

2018-11-13 Thread Derrick Stolee
die(_("unable to access commit %s"), builtin/show-branch.c 517fe807d6 builtin/show-branch.c 607) BUG_ON_OPT_NEG(unset); builtin/show-ref.c 517fe807d6 builtin/show-ref.c 154) BUG_ON_OPT_NEG(unset); builtin/upload-archive.c e001fd3a50 builtin/upload-archive.c 113) if (version == protocol_v0 || ve

Re: [PATCH 1/2] commit-graph: clean up leaked memory during write

2018-10-03 Thread Derrick Stolee
On 10/2/2018 6:44 PM, Stefan Beller wrote: My preference is to avoid them in the name of simplicity. If you're using "make SANITIZE=leak test" to check for leaks, it will skip these cases. If you're using valgrind, I think these may be reported as "reachable". But that number already isn't

Re: [PATCH 0/2] commit-graph: more leak fixes

2018-10-03 Thread Derrick Stolee
On 10/3/2018 11:36 AM, Martin Ågren wrote: Hi Derrick, These two patches on top of yours make the test suite (i.e., the subset of it that I run) leak-free with respect to builtin/commit-graph.c and commit-graph.c. Thanks! The first could be squashed into your patch 1/2. It touches the same

Re: We should add a "git gc --auto" after "git clone" due to commit graph

2018-10-03 Thread Derrick Stolee
On 10/3/2018 2:51 PM, Jeff King wrote: On Wed, Oct 03, 2018 at 08:47:11PM +0200, Ævar Arnfjörð Bjarmason wrote: On Wed, Oct 03 2018, Stefan Beller wrote: So we wouldn't be spending 5 minutes repacking linux.git right after cloning it, just ~10s generating the commit graph, and the same would

Re: [RFC PATCH] We should add a "git gc --auto" after "git clone" due to commit graph

2018-10-05 Thread Derrick Stolee
On 10/4/2018 5:42 PM, Ævar Arnfjörð Bjarmason wrote: I don't have time to polish this up for submission now, but here's a WIP patch that implements this, highlights: * There's a gc.clone.autoDetach=false default setting which overrides gc.autoDetach if 'git gc --auto' is run via git-clone

Re: [PATCH 15/16] commit-reach: make can_all_from_reach... linear

2018-10-05 Thread Derrick Stolee
On 10/4/2018 6:59 PM, René Scharfe wrote: Am 01.10.2018 um 22:37 schrieb René Scharfe: Am 01.10.2018 um 21:26 schrieb Derrick Stolee: Good catch! I'm disappointed that we couldn't use type-checking here, as it is quite difficult to discover that the types are wrong here. Generics in C

Re: [RFC PATCH] We should add a "git gc --auto" after "git clone" due to commit graph

2018-10-05 Thread Derrick Stolee
On 10/5/2018 9:05 AM, Ævar Arnfjörð Bjarmason wrote: On Fri, Oct 05 2018, Derrick Stolee wrote: On 10/4/2018 5:42 PM, Ævar Arnfjörð Bjarmason wrote: I don't have time to polish this up for submission now, but here's a WIP patch that implements this, highlights: * There's

Re: [PATCH 2/3] midx: close multi-pack-index on repack

2018-10-09 Thread Derrick Stolee
On 10/9/2018 5:10 AM, Junio C Hamano wrote: "Derrick Stolee via GitGitGadget" writes: diff --git a/builtin/repack.c b/builtin/repack.c index c6a7943d5c..7925bb976e 100644 --- a/builtin/repack.c +++ b/builtin/repack.c @@ -432,6 +432,10 @@ int cmd_repack(int argc, const char **argv,

Bloom Filters (was Re: We should add a "git gc --auto" after "git clone" due to commit graph)

2018-10-09 Thread Derrick Stolee
(Changing title to reflect the new topic.) On 10/8/2018 11:08 PM, Jeff King wrote: On Mon, Oct 08, 2018 at 02:29:47PM -0400, Derrick Stolee wrote: There are two questions that I was hoping to answer by looking at your code: 1. How do you store your Bloom filter? Is it connected to the commit

Re: [PATCH] more oideq/hasheq conversions

2018-10-02 Thread Derrick Stolee
t's a reasonable time to apply it. There are a few lingering cases in pu, so another option is to wait a week or two and see if they get merged. These conversions look good to me! Reviewed-by: Derrick Stolee

Re: [RFC PATCH 6/6] commit-reach: fix first-parent heuristic

2018-10-11 Thread Derrick Stolee
On 10/10/2018 9:50 PM, Jonathan Nieder wrote: Hi, Derrick Stolee wrote: commit-reach.c| 4 +++- t/t6600-test-reach.sh | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) I like this testing technique, and the test passes for me. Except: if I put CC = cc -m32

Re: What's cooking in git.git (Oct 2018, #01; Wed, 10)

2018-10-11 Thread Derrick Stolee
On 10/10/2018 1:43 AM, Junio C Hamano wrote: * ds/reachable-topo-order (2018-09-21) 7 commits - revision.c: refactor basic topo-order logic - revision.h: add whitespace in flag definitions - commit/revisions: bookkeeping before refactoring - revision.c: begin refactoring --topo-order

Re: Bloom Filters

2018-10-11 Thread Derrick Stolee
On 10/9/2018 7:12 PM, Jeff King wrote: On Tue, Oct 09, 2018 at 05:14:50PM -0400, Jeff King wrote: Hmph. It really sounds like we could do better with a custom RLE solution. But that makes me feel like I'm missing something, because surely I can't invent something better than the state of the

Re: [PATCH 1/2] One filter per commit

2018-10-11 Thread Derrick Stolee
On 10/10/2018 9:21 PM, Jonathan Tan wrote: diff --git a/commit-graph.c b/commit-graph.c index f415d3b41f..90b0b3df90 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -715,13 +715,11 @@ static int add_ref_to_list(const char *refname, static void add_changes_to_bloom_filter(struct

Re: Git Evolve

2018-10-01 Thread Derrick Stolee
On 9/29/2018 7:00 PM, Stefan Xenos wrote: Hello, List! Hello! Welcome. I'm interested in porting something like Mercurial's evolve command to Git. I'll be following up with a formal proposal shortly, but before I do I thought I'd introduce myself to the list and find out if anyone else is

Re: [PATCH] read-cache: fix division by zero core-dump

2018-10-01 Thread Derrick Stolee
On 9/28/2018 11:31 AM, Ramsay Jones wrote: Also, this is not the first time some multi-threaded code in git has 'failed' by assuming more than one cpu, so ... I wonder if this is a good time to create a GIT_TEST_CPU_COUNT variable so we can mock out single-processor environments instead of

Re: We should add a "git gc --auto" after "git clone" due to commit graph

2018-10-03 Thread Derrick Stolee
On 10/3/2018 9:36 AM, SZEDER Gábor wrote: On Wed, Oct 03, 2018 at 03:23:57PM +0200, Ævar Arnfjörð Bjarmason wrote: Don't have time to patch this now, but thought I'd send a note / RFC about this. Now that we have the commit graph it's nice to be able to set e.g. core.commitGraph=true &

Re: Bloom Filters (was Re: We should add a "git gc --auto" after "git clone" due to commit graph)

2018-10-09 Thread Derrick Stolee
On 10/9/2018 2:46 PM, Jeff King wrote: On Tue, Oct 09, 2018 at 09:48:20AM -0400, Derrick Stolee wrote: [I snipped all of the parts about bloom filters that seemed entirely reasonable to me ;) ] Imagine we have that list. Is a bloom filter still the best data structure for each commit

Re: [PATCH 0/4] Bloom filter experiment

2018-10-09 Thread Derrick Stolee
On 10/9/2018 3:34 PM, SZEDER Gábor wrote: To keep the ball rolling, here is my proof of concept in a somewhat cleaned-up form, with still plenty of rough edges. You can play around with it like this: $ GIT_USE_POC_BLOOM_FILTER=$((8*1024*1024*8)) git commit-graph write Computing commit

Re: [PATCH 15/16] commit-reach: make can_all_from_reach... linear

2018-10-01 Thread Derrick Stolee
On 10/1/2018 3:16 PM, René Scharfe wrote: Am 28.06.2018 um 14:31 schrieb Derrick Stolee via GitGitGadget: diff --git a/commit-reach.c b/commit-reach.c index c58e50fbb..ac132c8e4 100644 --- a/commit-reach.c +++ b/commit-reach.c @@ -513,65 +513,88 @@ int commit_contains(struct ref_filter *filter

Re: [PATCH 0/8] WIP: trace2: a new trace facility

2018-08-31 Thread Derrick Stolee
On 8/31/2018 12:49 PM, Jeff Hostetler via GitGitGadget wrote: This patch series contains a new trace2 facility that hopefully addresses the recent trace- and structured-logging-related discussions. The intent is to eventually replace the existing trace_ routines (or to route them to the new

Re: [PATCH 1/8] trace2: create new combined trace facility

2018-08-31 Thread Derrick Stolee
On 8/31/2018 12:49 PM, Jeff Hostetler via GitGitGadget wrote: + if (tr2key_trace_want(_event)) { + struct tr2tls_thread_ctx *ctx = tr2tls_get_self(); + if (ctx->nr_open_regions <= tr2env_event_depth_wanted) { This should also compare to TR2_MAX_REGION_NESTING

Re: [PATCH v3 0/1] contrib: Add script to show uncovered "new" lines

2018-09-21 Thread Derrick Stolee
On 9/21/2018 11:15 AM, Derrick Stolee via GitGitGadget wrote: For example, I ran this against the 'next' branch (22e244b) versus 'master' (150f307) and got the following output: fsck.c fb8952077df (René Scharfe 2018-09-03 14:49:26 + 212) die_errno("Could not rea

Re: Segfault in master due to 4fbcca4eff

2018-09-21 Thread Derrick Stolee
On 9/21/2018 10:40 AM, Ævar Arnfjörð Bjarmason wrote: On Fri, Sep 21 2018, Derrick Stolee wrote: This error was reported by Peff [1] and fixed in [2], but as stated [3] I was waiting for more review before sending a v3. I'll send that v3 shortly, responding to the feedback so far. -Stolee

Re: Segfault in master due to 4fbcca4eff

2018-09-21 Thread Derrick Stolee
On 9/21/2018 10:30 AM, Ævar Arnfjörð Bjarmason wrote: On Fri, Sep 21 2018, Junio C Hamano wrote: * ds/reachable (2018-08-28) 19 commits (merged to 'next' on 2018-08-28 at b1634b371d) + commit-reach: correct accidental #include of C file (merged to 'next' on 2018-08-22 at 17f3275afb)

Re: [PATCH v2 1/2] commit-graph write: add progress output

2018-09-21 Thread Derrick Stolee
" instead of "0". This causes t3420-rebase-autostash.sh to fail, as that test watches the full output of the rebase command, including commit runs. The following patch fixes the problem, but could probably be squashed into a merge or other commit. Thanks, -Stolee -->8-- From: Derri

Re: [PATCH v3 1/2] commit-reach: properly peel tags

2018-09-24 Thread Derrick Stolee
On 9/21/2018 7:56 PM, Jeff King wrote: On Fri, Sep 21, 2018 at 08:05:26AM -0700, Derrick Stolee via GitGitGadget wrote: + if (!from_one || from_one->type != OBJ_COMMIT) { + /* no way to tell if this is reachable by +* look

Re: [PATCH 1/3] t7001: reformat to newer style

2018-09-24 Thread Derrick Stolee
automated approach catching everything, so I looked carefully at this patch. There are still a lot of things happening that we would not recommend doing in new tests. Reported-by: Derrick Stolee Reported-by: Jeff Hostetler Signed-off-by: Stefan Beller --- t/t7001-mv.sh | 268

Re: [PATCH v3 2/2] commit-reach: fix memory and flag leaks

2018-09-24 Thread Derrick Stolee
On 9/21/2018 7:58 PM, Jeff King wrote: On Fri, Sep 21, 2018 at 08:05:27AM -0700, Derrick Stolee via GitGitGadget wrote: From: Derrick Stolee The can_all_from_reach_with_flag() method uses 'assign_flag' as a value we can use to mark objects temporarily during our commit walk. The intent

Re: Git Test Coverage Report (Tuesday, Sept 25)

2018-09-26 Thread Derrick Stolee
On 9/25/2018 5:12 PM, Ben Peart wrote: On 9/25/2018 2:42 PM, Derrick Stolee wrote: In an effort to ensure new code is reasonably covered by the test suite, we now have contrib/coverage-diff.sh to combine the gcov output from 'make coverage-test ; make coverage-report' with the output from

Re: Git Test Coverage Report (Tuesday, Sept 25)

2018-09-26 Thread Derrick Stolee
On 9/26/2018 6:56 AM, Jason Pyeron wrote: -Original Message- From: Derrick Stolee Sent: Wednesday, September 26, 2018 6:43 AM On 9/25/2018 5:12 PM, Ben Peart wrote: On 9/25/2018 2:42 PM, Derrick Stolee wrote: In an effort to ensure new code is reasonably covered by the test suite, we

Re: What's cooking in git.git (Sep 2018, #05; Mon, 24)

2018-09-24 Thread Derrick Stolee
On 9/24/2018 6:06 PM, Junio C Hamano wrote: * ds/reachable (2018-09-21) 2 commits (merged to 'next' on 2018-09-21 at d4cd62108e) + commit-reach: fix memory and flag leaks + commit-reach: properly peel tags Recent update broke the reachability algorithm when refs (e.g. tags) that

Re: Git Test Coverage Report (Tuesday, Sept 25)

2018-09-26 Thread Derrick Stolee
On 9/26/2018 1:59 PM, Junio C Hamano wrote: Derrick Stolee writes: In an effort to ensure new code is reasonably covered by the test suite, we now have contrib/coverage-diff.sh to combine the gcov output from 'make coverage-test ; make coverage-report' with the output from 'git diff A B

Re: Git Test Coverage Report (Tuesday, Sept 25)

2018-09-26 Thread Derrick Stolee
On 9/26/2018 2:43 PM, Thomas Gummerer wrote: On 09/26, Derrick Stolee wrote: This is a bit tricky to do, but I will investigate. For some things, the values can conflict with each other (GIT_TEST_SPLIT_INDEX doesn't play nicely with other index options, I think). Just commenting on this point

Re: [PATCH v3 1/7] prio-queue: add 'peek' operation

2018-09-26 Thread Derrick Stolee
On 9/21/2018 1:39 PM, Derrick Stolee via GitGitGadget wrote: From: Derrick Stolee When consuming a priority queue, it can be convenient to inspect the next object that will be dequeued without actually dequeueing it. Our existing library did not have such a 'peek' operation, so add

Re: [PATCH 1/4] git-commit-graph.txt: fix bullet lists

2018-09-20 Thread Derrick Stolee
On 9/19/2018 12:30 PM, Martin Ågren wrote: We have a couple of bullet items which span multiple lines, and where we have prefixed each line with a `*`. (This might be the result of a text editor trying to help.) This results in each line being typeset as a separate bullet item. Drop the extra

Re: [PATCH 2/4] git-commit-graph.txt: typeset more in monospace

2018-09-20 Thread Derrick Stolee
On 9/19/2018 12:30 PM, Martin Ågren wrote: While we're here, fix an instance of "folder" to be "directory". These changes are clearly good. Thanks!

Re: [PATCH 3/4] git-commit-graph.txt: refer to "*commit* graph file"

2018-09-20 Thread Derrick Stolee
On 9/19/2018 12:30 PM, Martin Ågren wrote: This document sometimes refers to the "commit graph file" as just "the graph file". This saves a couple of words here and there at the risk of confusion. In particular, the documentation for `git commit-graph read` appears to suggest that there are

Re: [PATCH 7/9] midx.h: add missing forward declarations (hdr-check)

2018-09-20 Thread Derrick Stolee
; +struct pack_entry; + struct multi_pack_index { struct multi_pack_index *next; Thanks for catching this! Reviewed-by: Derrick Stolee

Re: [PATCH 9/9] commit-reach.h: add missing declarations (hdr-check)

2018-09-20 Thread Derrick Stolee
On 9/18/2018 8:15 PM, Ramsay Jones wrote: Signed-off-by: Ramsay Jones --- commit-reach.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/commit-reach.h b/commit-reach.h index 7d313e2975..f41d8f6ba3 100644 --- a/commit-reach.h +++ b/commit-reach.h @@ -1,12 +1,13 @@

Re: [PATCH] gc: fix regression in 7b0f229222 impacting --quiet

2018-09-20 Thread Derrick Stolee
On 9/19/2018 5:21 PM, Martin Ågren wrote: On Wed, 19 Sep 2018 at 23:04, Ævar Arnfjörð Bjarmason wrote: Fix a regression in my recent 7b0f229222 ("commit-graph write: add progress output", 2018-09-17), the newly added progress output for "commit-graph write" didn't check the --quiet option.

Re: [PATCH 3/4] git-commit-graph.txt: refer to "*commit* graph file"

2018-09-20 Thread Derrick Stolee
On 9/20/2018 9:38 AM, Martin Ågren wrote: On Thu, 20 Sep 2018 at 14:50, Derrick Stolee wrote: On 9/19/2018 12:30 PM, Martin Ågren wrote: The full name, by the way, is not the "commit-graph file" with a dash, cf. the synopsis. Use the dashless form. (The next commit will fix the rem

Re: [PATCH 9/9] commit-reach.h: add missing declarations (hdr-check)

2018-09-21 Thread Derrick Stolee
On 9/20/2018 11:35 AM, Ramsay Jones wrote: On 20/09/18 00:38, Derrick Stolee wrote: On 9/18/2018 8:15 PM, Ramsay Jones wrote: Signed-off-by: Ramsay Jones ---   commit-reach.h | 5 +++--   1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/commit-reach.h b/commit-reach.h index

Re: [PATCH] fetch-object.h: add missing declaration (hdr-check)

2018-09-21 Thread Derrick Stolee
On 9/21/2018 1:05 PM, Junio C Hamano wrote: Ramsay Jones writes: BTW, I notice that patch #9 (commit-reach.h: add missing declarations (hdr-check)) didn't make it onto 'pu' - was there something else I needed to do? (I am still in two minds about sending an RFC patch on-top of patch #9). I

Re: [PATCH v2 0/6] Use generation numbers for --topo-order

2018-09-21 Thread Derrick Stolee
On 9/18/2018 2:05 AM, Ævar Arnfjörð Bjarmason wrote: On Tue, Sep 18 2018, Derrick Stolee via GitGitGadget wrote: Thanks. Good to see the commit graph used for more stuff. On the Linux repository, I got the following performance results when comparing to the previous version with or without

[PATCH] commit-reach: cleanups in can_all_from_reach...

2018-09-25 Thread Derrick Stolee
From: Derrick Stolee Due to a regression introduced by 4fbcca4e "commit-reach: make can_all_from_reach... linear" the series including b67f6b26 "commit-reach: properly peel tags" was merged to master quickly. There were a few more cleanups left to apply in the series

Re: [PATCH 1/1] read-cache: update index format default to v4

2018-09-25 Thread Derrick Stolee
On 9/25/2018 3:06 AM, Patrick Steinhardt wrote: On Mon, Sep 24, 2018 at 11:32:23PM +0200, SZEDER Gábor wrote: On Mon, Sep 24, 2018 at 02:15:30PM -0700, Derrick Stolee via GitGitGadget wrote: From: Derrick Stolee The index v4 format has been available since 2012 with 9d22778 "reach-ca

Re: [PATCH] commit-reach: cleanups in can_all_from_reach...

2018-09-25 Thread Derrick Stolee
On 9/25/2018 2:06 PM, Junio C Hamano wrote: Derrick Stolee writes: @@ -622,10 +623,7 @@ int can_all_from_reach_with_flag(struct object_array *from, } cleanup: - for (i = 0; i < nr_commits; i++) { - clear_commit_marks(list[i], RES

Git Test Coverage Report (Tuesday, Sept 25)

2018-09-25 Thread Derrick Stolee
coverage can be improved. Thanks, -Stolee --- master@{1}..master: builtin/remote.c 5025425dfff (   Shulhan 2018-09-13 20:18:33 +0700 864)    return error(_("No such remote: '%s'"), name); commit-reach.c b67f6b26e35     (Derrick Stolee 2018-09-21 08:05:26

Git Test Coverage Report (Sunday, Nov 18th)

2018-11-18 Thread Derrick Stolee
of %s"), oid_to_hex(oid)); bac2a1e36f  586) goto leave_reset_head; 3249c1251e  590) ret = error(_("failed to find tree of %s"), oid_to_hex(oid)); 3249c1251e  591) goto leave_reset_head; 3249c1251e  604) goto leave_reset_head; builtin/show-branch.c 517fe807d6 builtin/show-branch.c

Re: [PATCH] technical doc: add a design doc for the evolve command

2018-11-16 Thread Derrick Stolee
On 11/14/2018 7:55 PM, sxe...@google.com wrote: From: Stefan Xenos This document describes what an obsolescence graph for git would look like, the behavior of the evolve command, and the changes planned for other commands. Thanks for putting this together! diff --git

Git Test Coverage Report (Friday Nov 30)

2018-11-30 Thread Derrick Stolee
Here is today's test coverage report. Thanks, -Stolee [1] https://dev.azure.com/git/git/_build/results?buildId=277 --- pu: 5a1a9a96d55fbb80426189a921d7b6cc66564c78 jch: 71c29cabb7379fe9abaacbbbd1350268d0c18b4f next: a9faaff8c120bf4783cb892c157871fe524b3608 master:

Re: [PATCH 3/5] pack-objects: add --sparse option

2018-11-30 Thread Derrick Stolee
On 11/29/2018 9:39 PM, Junio C Hamano wrote: Derrick Stolee writes: While _eventually_ we should make this opt-out, we shouldn't do that until it has cooked a while. I actually do not agree. If the knob gives enough benefit, the users will learn about it viva voce, and in a few more

Re: [PATCH 0/5] Add a new "sparse" tree walk algorithm

2018-11-28 Thread Derrick Stolee
On 11/28/2018 5:18 PM, Ævar Arnfjörð Bjarmason wrote: This is really interesting. I tested this with: diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index 124b1bafc4..5c7615f06c 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -3143

Re: git, monorepos, and access control

2018-12-05 Thread Derrick Stolee
On 12/5/2018 3:34 PM, Ævar Arnfjörð Bjarmason wrote: On Wed, Dec 05 2018, Coiner, John wrote: I'm an engineer with AMD. I'm looking at whether we could switch our internal version control to a monorepo, possibly one based on git and VFSForGit. Has anyone looked at adding access control to

Re: [PATCH v2 2/3] commit-graph: fix buffer read-overflow

2018-12-07 Thread Derrick Stolee
On 12/6/2018 3:20 PM, Josh Steadmon wrote: + +# usage: corrupt_and_zero_graph_then_verify +# Manipulates the commit-graph file at by inserting the data, +# then zeros the file starting at . Finally, runs +# 'git commit-graph verify' and places the output in the file 'err'. Tests 'err' +#

Re: [PATCH on sb/more-repo-in-api] revision: use commit graph in get_reference()

2018-12-07 Thread Derrick Stolee
On 12/6/2018 6:36 PM, Jonathan Tan wrote: AFAICT oid_object_info doesn't take advantage of the commit graph, but just looks up the object header, which is still less than completely parsing it. Then lookup_commit is overly strict, as it may return NULL as when there still is a type mismatch (I

Re: [PATCH 2/2] commit-graph: fix buffer read-overflow

2018-12-06 Thread Derrick Stolee
On 12/5/2018 5:32 PM, Josh Steadmon wrote: + if (chunk_lookup + GRAPH_CHUNKLOOKUP_WIDTH > data + graph_size) { + error(_("chunk lookup table entry missing; graph file may be incomplete")); + free(graph); + return NULL; +

Re: [PATCH 3/5] pack-objects: add --sparse option

2018-11-29 Thread Derrick Stolee
On 11/28/2018 5:11 PM, Stefan Beller wrote: +--sparse:: + Use the "sparse" algorithm to determine which objects to include in + the pack. This can have significant performance benefits when computing + a pack to send a small change. However, it is possible that extra +

Re: [PATCH 1/1] revision.c: use new topo-order logic in tests

2018-11-20 Thread Derrick Stolee
On 11/20/2018 1:13 AM, Junio C Hamano wrote: "Derrick Stolee via GitGitGadget" writes: @@ -3143,6 +3144,9 @@ int prepare_revision_walk(struct rev_info *revs) commit_list_sort_by_date(>commits); if (revs->no_walk) return 0; + i

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-19 Thread Derrick Stolee
On 11/19/2018 1:33 PM, Ævar Arnfjörð Bjarmason wrote: On Mon, Nov 19 2018, Derrick Stolee wrote: [...] builtin/rebase.c 62c23938fa 55) return env; [...] Ævar Arnfjörð Bjarmason 62c23938f: tests: add a special setup where rebase.useBuiltin is off This one would be covered

Re: [PATCH 2/2] commit-graph: don't call write_graph_chunk_large_edges() unnecessarily

2018-11-21 Thread Derrick Stolee
On 11/20/2018 8:26 PM, SZEDER Gábor wrote: write_graph_chunk_data(f, GRAPH_OID_LEN, commits.list, commits.nr); - write_graph_chunk_large_edges(f, commits.list, commits.nr); + if (num_large_edges) + write_graph_chunk_large_edges(f, commits.list, commits.nr);

Re: [PATCH 1/2] commit-graph: rename 'num_extra_edges' variable to 'num_large_edges'

2018-11-21 Thread Derrick Stolee
On 11/20/2018 10:29 PM, Junio C Hamano wrote: SZEDER Gábor writes: I rename these variables to 'num_large_edges', because the commit graph file format speaks about the 'Large Edge List' chunk. However, I do find that the term 'extra' makes much more sense Would it make sense to do the

Re: [PATCH v2 1/1] Use size_t instead of 'unsigned long' for data in memory

2018-11-21 Thread Derrick Stolee
ot;, "sz", or "len". However, it appears to be correct from context. Thanks for this! Reviewed-by: Derrick Stolee

Git Test Coverage Report (Wednesday Nov 21)

2018-11-21 Thread Derrick Stolee
error_errno(_("unable to dup bundle descriptor")); 2c8ee1f53c 268) child_process_clear(_objects); 2c8ee1f53c 269) return -1; 2c8ee1f53c 478) rollback_lock_file(); config.c fast-import.c ca473cef91 2958) strbuf_addf(, "%s %s %"PRIuMAX"\n", oid_to_hex(oid), midx.c na

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-20 Thread Derrick Stolee
On 11/20/2018 6:34 AM, Jeff King wrote: On Mon, Nov 19, 2018 at 10:40:53AM -0500, Derrick Stolee wrote: Since depth is never incremented, we are not covering this block. Is it possible to test? This should be covered by the fix in: https://public-inbox.org/git/20181120095053.gc22

Re: [PATCH 0/3] delta-island fixes

2018-11-20 Thread Derrick Stolee
On 11/20/2018 4:44 AM, Jeff King wrote: In cases like this I think it's often a good idea to have a perf test. Those are expensive anyway, and we'd have the double benefit of exercising the code and showing off the performance improvement. But the delta-island code only makes sense on a very

Re: [BUG REPORT] t5322: demonstrate a pack-objects bug

2018-11-28 Thread Derrick Stolee
On 11/28/2018 2:45 PM, Derrick Stolee wrote: I was preparing a new "sparse" algorithm for calculating the interesting objects to send on push. The important steps happen during 'git pack-objects', so I was creating test cases to see how the behavior changes in narrow cases. Specific

[BUG REPORT] t5322: demonstrate a pack-objects bug

2018-11-28 Thread Derrick Stolee
s probable that this is not a minimal test case, but happens to be the test I had created before discovering the problem. I compiled v2.17.0 and v2.12.0 as checks to see if I could find a "good" commit with which to start a bisect, but both failed. This is an old bug! Signed-off-by: Derrick Stole

Re: [PATCH] commit-graph: split up close_reachable() progress output

2018-11-19 Thread Derrick Stolee
On 11/19/2018 3:23 PM, Ævar Arnfjörð Bjarmason wrote: + if (report_progress) + progress = start_delayed_progress( + _("Expanding reachable commits in commit graph"), j = 0); This should be the only one that shows up in all but the very largest of

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-19 Thread Derrick Stolee
On 11/19/2018 1:33 PM, Ævar Arnfjörð Bjarmason wrote: On Mon, Nov 19 2018, Derrick Stolee wrote: Here is a test coverage report for the uncovered lines introduced in v2.20.0-rc0 compared to v2.19.1. Thanks a lot for this. [...] builtin/rebase.c 62c23938fa 55) return env; [...] Ævar Arnfjörð

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-19 Thread Derrick Stolee
On 11/19/2018 2:39 PM, Ævar Arnfjörð Bjarmason wrote: On Mon, Nov 19 2018, Derrick Stolee wrote: The coverage report has been using the following: export GIT_TEST_MULTI_PACK_INDEX=1 export GIT_TEST_COMMIT_GRAPH=1 export GIT_TEST_INDEX_VERION=4 export GIT_TEST_SPLIT_INDEX=yes export

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-19 Thread Derrick Stolee
On 11/19/2018 2:00 PM, Ben Peart wrote: On 11/19/2018 10:40 AM, Derrick Stolee wrote: There are a lot of lines introduced by the IEOT extension in these commits:  > Ben Peart  3255089ad: ieot: add Index Entry Offset Table (IEOT) extension  > Ben Peart  3b1d9e045: eoie: a

Git Test Coverage Report (v2.20.0-rc0)

2018-11-18 Thread Derrick Stolee
en_relative, >shallows, worktree.c 3a3b9d8cde 495) return -1; 3a3b9d8cde 508) return -1; 3a3b9d8cde 517) return -1; ab3e1f78ae 537) break; wt-status.c f3bd35fa0d  671) s->committable = 1; 73ba5d78b4 1958) if (s->state.rebase_in_progress || 73ba5d78b4 1959) s->state.rebase_interac

Re: Git Test Coverage Report (v2.20.0-rc0)

2018-11-19 Thread Derrick Stolee
was related to unusual error conditions (e.g. open_pack_index() fails) The comments below are intended only to point out potential directions to improve test coverage. Some of it is for me to do! Thanks, -Stolee On 11/18/2018 9:54 PM, Derrick Stolee wrote: 66ec0390e7 builtin/fsck.c 888) midx_argv[2

Re: [PATCH/RFC v1 1/1] Use size_t instead of unsigned long

2018-11-18 Thread Derrick Stolee
On 11/17/2018 10:11 AM, tbo...@web.de wrote: From: Torsten Bögershausen Currently Git users can not commit files >4Gib under 64 bit Windows, where "long" is 32 bit but size_t is 64 bit. Improve the code base in small steps, as small as possible. What started with a small patch to replace

Re: [PATCH 0/1] contrib: Add script to show uncovered "new" lines

2018-09-12 Thread Derrick Stolee
On 9/12/2018 12:45 PM, Derrick Stolee via GitGitGadget wrote: For example, I ran this against the 'jch' branch (d3c0046) versus 'next' (dd90340) As another example, I ran this against the 'pu' branch (4c416a53) versus 'jch' (d3c0046) and got the following output, submitted here without

Re: [PATCH 1/1] contrib: add coverage-diff script

2018-09-13 Thread Derrick Stolee
On 9/12/2018 6:54 PM, Junio C Hamano wrote: Junio C Hamano writes: "Derrick Stolee via GitGitGadget" writes: contrib/coverage-diff.sh | 70 1 file changed, 70 insertions(+) create mode 100755 contrib/coverage-diff.sh I fully

Re: Git 2.19 Segmentation fault 11 on macOS

2018-09-11 Thread Derrick Stolee
On 9/11/2018 12:04 PM, Derrick Stolee wrote: On 9/11/2018 11:38 AM, Derrick Stolee wrote: On 9/11/2018 11:25 AM, ryenus wrote: I just updated to 2.19 via Homebrew, git range-diff seems cool, but I only got a Segmentation fault: 11 $ git version; git range-diff origin/master  HEAD@{2

Re: [PATCH] midx.c: mark a file-local symbol as static

2018-09-17 Thread Derrick Stolee
On 9/14/2018 7:26 PM, Ramsay Jones wrote: Signed-off-by: Ramsay Jones --- Hi Derrick, If you need to re-roll your 'ds/multi-pack-verify' branch, could you please squash this into the relevant patch (commit 64cbf3df21, "multi-pack-index: add 'verify' verb", 2018-09-13). [noticed by sparse].

Re: What's cooking in git.git (Sep 2018, #03; Fri, 14)

2018-09-17 Thread Derrick Stolee
On 9/14/2018 5:56 PM, Junio C Hamano wrote: * ds/format-commit-graph-docs (2018-08-21) 2 commits - commit-graph.txt: improve formatting for asciidoc - Docs: Add commit-graph tech docs to Makefile Design docs for the commit-graph machinery is now made into HTML as well as text. Will

Re: [PATCH 1/1] t3206-range-diff.sh: cover single-patch case

2018-09-12 Thread Derrick Stolee
On 9/11/2018 5:34 PM, Eric Sunshine wrote: On Tue, Sep 11, 2018 at 4:26 PM Derrick Stolee via GitGitGadget wrote: The commit 40ce4160 "format-patch: allow --range-diff to apply to a lone-patch" added the ability to see a range-diff as commentary after the commit message of a si

Re: [PATCH v2 17/18] commit-reach: make can_all_from_reach... linear

2018-09-12 Thread Derrick Stolee
On 9/12/2018 12:29 AM, Jeff King wrote: On Wed, Sep 12, 2018 at 12:14:25AM -0400, Jeff King wrote: + ALLOC_ARRAY(list, from->nr); for (i = 0; i < from->nr; i++) { - struct object *from_one = from->objects[i].item; + list[i] = (struct commit

Re: [PATCH 0/1] Add coverage for 'git format-patch --range-diff' single-patch case

2018-09-11 Thread Derrick Stolee
On 9/11/2018 4:21 PM, Derrick Stolee via GitGitGadget wrote: In es/format-patch-rangediff, we added a '--range-diff' option to git-format-patch to automatically add a range-diff. We also added an option to write the diff as commentary to a single patch submission. However, this check

Re: [PATCH v2 1/1] contrib: add coverage-diff script

2018-09-13 Thread Derrick Stolee
On 9/13/2018 1:40 PM, Junio C Hamano wrote: "Derrick Stolee via GitGitGadget" writes: + then + line_num=$(($line_num + 1)) + fi + fi + done I have a feeling that a single Perl scri

<    7   8   9   10   11   12   13   14   >