Message ID | pull.696.v3.git.1598380599.gitgitgadget@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | Maintenance II: prefetch, loose-objects, incremental-repack tasks | expand |
"Derrick Stolee via GitGitGadget" <gitgitgadget@gmail.com> writes: > This series is based on v3 of part I (ds/maintenance-part-1) [2]. > > This patch series contains 9 patches that were going to be part of v4 of > ds/maintenance [1], but the discussion has gotten really long. To help, I'm > splitting out the portions that create and test the 'maintenance' builtin > from the additional tasks (prefetch, loose-objects, incremental-repack) that > can be brought in later. I gave it a quick look but the changes mostly are fallout from renaming the options structure to maitenance_RUN_opts and loss of midx verify while a task rewrites midx; iow, no significant change that are likely to become controversial.
Hi Derrick, > On Aug 25, 2020, at 20:36, Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com> wrote: > ... > > Updates since v2 > ================ > > * Dropped "fetch: optionally allow disabling FETCH_HEAD update" > > > * A lot of fallout from the change in the option parsing in v3 of > Maintenance II. > > > * Dropped the "verify, and delete and rewrite on failure" logic from the > incremental-repack task. This might be added again later after it can be > tested more thoroughly. Perhaps I missed some conversations related to this change but why was this verify-rewrite strategy dropped? Was the problem such strategy were created to solve is now no longer a concern? I feel like it would be much better to add it in and then remove it using a separated commit? That way we can follow the reasoning behind these decisions via commit message. > ... > > -- > gitgitgadget Thanks, Son Luong.
On 8/26/2020 11:15 AM, Son Luong Ngoc wrote: > Hi Derrick, > >> On Aug 25, 2020, at 20:36, Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com> wrote: >> * Dropped the "verify, and delete and rewrite on failure" logic from the >> incremental-repack task. This might be added again later after it can be >> tested more thoroughly. > > Perhaps I missed some conversations related to this change but > why was this verify-rewrite strategy dropped? > > Was the problem such strategy were created to solve is now no longer a concern? > > I feel like it would be much better to add it in and then remove it using a separated commit? > That way we can follow the reasoning behind these decisions via commit message. The most-recent message was [1] [1] https://lore.kernel.org/git/20200819174322.3087791-1-jonathantanmy@google.com/ For now, I'd rather move forward with this simpler task and I will revisit the "verify and fix" situation when it can be done in a focused way instead of being surrounded by builtin boilerplate and other basics of the maintenance feature. Specifically, it would help to have a way to test the logic. In Scalar, I was able to mock the Git commands and return failures in specific places. A similar approach could be done here, or perhaps there is another way to be confident that the "verify and fix" logic is actually helpful. Thanks, -Stolee