Message ID | 20241215-320-git-refs-migrate-reflogs-v3-0-4127fe707b98@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | refs: add reflog support to `git refs migrate` | expand |
Karthik Nayak <karthik.188@gmail.com> writes: > Overall, this series is a bit more involved, and I would appreciate it > if it receives a bit more scrutiny. > > The series is based on top of e66fd72e97 (The fourteenth batch, > 2024-12-06) with `kn/reftable-writer-log-write-verify` merged in. t1460.6 does not pass for me. I noticed it after I merged it to 'seen', but it fails standalone as well. $ git log --first-parent --boundary master..kn/reflog-migration 65a841566a refs: add support for migrating reflogs 44ffb130f3 refs: allow multiple reflog entries for the same refname 6134624eaf refs: introduce the `ref_transaction_update_reflog` function 65a73fce30 refs: add `committer_info` to `ref_transaction_add_update()` 5ed33e32c7 refs: extract out refname verification in transactions e9851924a2 refs/files: add count field to ref_lock cdfa2c379a refs: add `index` field to `struct ref_udpate` ee4d52c7f2 refs: include committer info in `ref_update` struct df5d7a7ba5 Merge branch 'kn/reftable-writer-log-write-verify' into kn/reflog-migration - 49c6b912e2 reftable/writer: ensure valid range for log's update_index - e66fd72e97 The fourteenth batch ... ok 5 - files: migration to same format fails expecting success of 1460.6 'files -> reftable: migration with worktree fails': test_when_finished "rm -rf repo" && git init --ref-format=$from_format repo && git -C repo worktree add wt && test_must_fail git -C repo refs migrate \ --ref-format=$to_format 2>err && cat >expect <<-EOF && error: migrating repositories with worktrees is not supported yet EOF test_cmp expect err ++ test_when_finished 'rm -rf repo' ++ test 0 = 0 ++ test_cleanup='{ rm -rf repo } && (exit "$eval_ret"); eval_ret=$?; :' ++ git init --ref-format=files repo Initialized empty Git repository in /home/gitster/w/git.git/t/trash directory.t1460-refs-migrate/repo/.git/ ++ git -C repo worktree add wt No possible source branch, inferring '--orphan' Preparing worktree (new branch 'wt') ++ test_must_fail git -C repo refs migrate --ref-format=reftable ++ case "$1" in ++ _test_ok= ++ test_must_fail_acceptable git -C repo refs migrate --ref-format=reftable ++ test git = env ++ test git = nongit ++ case "$1" in ++ return 0 ++ git -C repo refs migrate --ref-format=reftable /home/gitster/w/git.git/t/test-lib-functions.sh: line 1175: 3403665 Aborted "$@" 2>&7 ++ exit_code=134 ++ test 134 -eq 0 ++ test_match_signal 13 134 ++ test 134 = 141 ++ test 134 = 269 ++ return 1 ++ test 134 -gt 129 ++ test 134 -le 192 ++ echo 'test_must_fail: died by signal 6: git -C repo refs migrate --ref-format=reftable' test_must_fail: died by signal 6: git -C repo refs migrate --ref-format=reftable ++ return 1 error: last command exited with $?=1 not ok 6 - files -> reftable: migration with worktree fails # # test_when_finished "rm -rf repo" && # git init --ref-format=$from_format repo && # git -C repo worktree add wt && # test_must_fail git -C repo refs migrate \ # --ref-format=$to_format 2>err && # cat >expect <<-EOF && # error: migrating repositories with worktrees is not supported yet # EOF # test_cmp expect err # 1..6
Junio C Hamano <gitster@pobox.com> writes: > Karthik Nayak <karthik.188@gmail.com> writes: > >> Overall, this series is a bit more involved, and I would appreciate it >> if it receives a bit more scrutiny. >> >> The series is based on top of e66fd72e97 (The fourteenth batch, >> 2024-12-06) with `kn/reftable-writer-log-write-verify` merged in. > > t1460.6 does not pass for me. I noticed it after I merged it to > 'seen', but it fails standalone as well. > Thanks Junio, seems like this passes on GCC and that is what I was using. Sadly, it also passes on older clang version, which is what the CI uses. Unfortunately I assumed that the CI passing [1] should be validation enough. But I can indeed reproduce this locally with clang. Patrick posted a fix on the list [1] and also discovered one more while we were discussing off the list. I'll send in the next version with both of those included once I validate all the tests once more. [1]: https://gitlab.com/gitlab-org/git/-/pipelines/1589854339 [2]: https://lore.kernel.org/r/Z1_KzlKc7RBfas4L@pks.im [snip]
karthik nayak <karthik.188@gmail.com> writes: > Patrick posted a fix on the list [1] and also discovered one more while > we were discussing off the list. I'll send in the next version with both > of those included once I validate all the tests once more. Thanks.