Message ID | 20221123150233.13039-3-worldhello.net@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Use fixed github-actions runner image | expand |
Hi, On Wed, 23 Nov 2022, Jiang Xin wrote: > From: Jiang Xin <zhiyou.jx@alibaba-inc.com> > > There would be a segmentation fault when running p4 v16.2 on ubuntu > 22.04 which is the latest version of ubuntu runner image for github > actions. Upgrade p4 from version 16.2 to 19.2 will fix this issue. I was about to embark on a debugging session when I had the splendid idea to look at the Git mailing list archives to see whether anybody else had encountered that particular problem. However, when I pushed a branch with this fix, it still segfaulted even when downloading version 19.2 (link: https://github.com/dscho/git/actions/runs/3538788474/jobs/5939977231#step:3:387): + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4d + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4 + [...] + echo 'Perforce Server Version' Perforce Server Version + p4d -V + grep Rev. + echo 'p4d: bad version' p4d: bad version + p4d -V ci/install-dependencies.sh: line 91: 3051 Segmentation fault (core dumped) p4d -V I guess I'll embark on that debugging session after all ;-) > Also add some instructions to show errors of command "p4 -V", so we can > see why the output doesn't match. This is an excellent addition. If I read the logs correctly, this change adds the error message "Segmentation fault" to the output, which is really helpful. Thank you for working on this! Dscho > > Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com> > --- > ci/install-dependencies.sh | 4 ++-- > ci/lib.sh | 2 +- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh > index f639263a62..291e49bdde 100755 > --- a/ci/install-dependencies.sh > +++ b/ci/install-dependencies.sh > @@ -83,9 +83,9 @@ esac > if type p4d >/dev/null 2>&1 && type p4 >/dev/null 2>&1 > then > echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)" > - p4d -V | grep Rev. > + p4d -V | grep Rev. || { echo >&2 "p4d: bad version"; p4d -V; exit 1; } > echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)" > - p4 -V | grep Rev. > + p4 -V | grep Rev. || { echo >&2 "p4: bad version"; p4 -V; exit 1; } > else > echo >&2 "WARNING: perforce wasn't installed, see above for clues why" > fi > diff --git a/ci/lib.sh b/ci/lib.sh > index 0c0767d354..8474b0f249 100755 > --- a/ci/lib.sh > +++ b/ci/lib.sh > @@ -246,7 +246,7 @@ ubuntu) > # were recorded in the Homebrew database upon creating the OS X > # image. > # Keep that in mind when you encounter a broken OS X build! > - export LINUX_P4_VERSION="16.2" > + export LINUX_P4_VERSION="19.2" > export LINUX_GIT_LFS_VERSION="1.5.2" > > P4_PATH="$HOME/custom/p4" > -- > 2.39.0.rc0 > >
Hi, On Thu, 24 Nov 2022, Johannes Schindelin wrote: > On Wed, 23 Nov 2022, Jiang Xin wrote: > > > From: Jiang Xin <zhiyou.jx@alibaba-inc.com> > > > > There would be a segmentation fault when running p4 v16.2 on ubuntu > > 22.04 which is the latest version of ubuntu runner image for github > > actions. Upgrade p4 from version 16.2 to 19.2 will fix this issue. > > I was about to embark on a debugging session when I had the splendid idea > to look at the Git mailing list archives to see whether anybody else had > encountered that particular problem. > > However, when I pushed a branch with this fix, it still segfaulted even > when downloading version 19.2 (link: > https://github.com/dscho/git/actions/runs/3538788474/jobs/5939977231#step:3:387): > > + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4d > + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4 > + [...] > + echo 'Perforce Server Version' > Perforce Server Version > + p4d -V > + grep Rev. > + echo 'p4d: bad version' > p4d: bad version > + p4d -V > ci/install-dependencies.sh: line 91: 3051 Segmentation fault (core > dumped) p4d -V > > I guess I'll embark on that debugging session after all ;-) And I did. It turns out that r22.2 works both on ubuntu-20.04 and ubuntu-22.04 (I locally verified for the former, proof for the latter: https://github.com/dscho/git/actions/runs/3538941550/jobs/5940295721#step:3:384). So I propose this fixup: -- snip -- From 81e2d9a4f6ad2d2d9df27edfb666fe2112bdef57 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin <johannes.schindelin@gmx.de> Date: Thu, 24 Nov 2022 09:31:41 +0100 Subject: [PATCH] amend! ci: upgrade version of p4 ci: upgrade version of p4 There would be a segmentation fault when running p4 v16.2 on ubuntu 22.04 which is the latest version of ubuntu runner image for github actions. Upgrade p4 from version 16.2 to 22.2 will fix this issue. Also add some instructions to show errors of command "p4 -V", so we can see why the output doesn't match. Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com> --- ci/lib.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/lib.sh b/ci/lib.sh index 6c658fa21227..eaa75ab3c07d 100755 --- a/ci/lib.sh +++ b/ci/lib.sh @@ -252,7 +252,7 @@ ubuntu) # were recorded in the Homebrew database upon creating the OS X # image. # Keep that in mind when you encounter a broken OS X build! - export LINUX_P4_VERSION="19.2" + export LINUX_P4_VERSION="22.2" export LINUX_GIT_LFS_VERSION="1.5.2" P4_PATH="$HOME/custom/p4" -- snap -- If you squash this in, please feel free to also use the updated commit message. Thank you, Dscho
Me again, On Thu, 24 Nov 2022, Johannes Schindelin wrote: > On Thu, 24 Nov 2022, Johannes Schindelin wrote: > > > On Wed, 23 Nov 2022, Jiang Xin wrote: > > > > > From: Jiang Xin <zhiyou.jx@alibaba-inc.com> > > > > > > There would be a segmentation fault when running p4 v16.2 on ubuntu > > > 22.04 which is the latest version of ubuntu runner image for github > > > actions. Upgrade p4 from version 16.2 to 19.2 will fix this issue. > > > > I was about to embark on a debugging session when I had the splendid idea > > to look at the Git mailing list archives to see whether anybody else had > > encountered that particular problem. > > > > However, when I pushed a branch with this fix, it still segfaulted even > > when downloading version 19.2 (link: > > https://github.com/dscho/git/actions/runs/3538788474/jobs/5939977231#step:3:387): > > > > + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4d > > + wget --quiet https://cdist2.perforce.com/perforce/r19.2/bin.linux26x86_64/p4 > > + [...] > > + echo 'Perforce Server Version' > > Perforce Server Version > > + p4d -V > > + grep Rev. > > + echo 'p4d: bad version' > > p4d: bad version > > + p4d -V > > ci/install-dependencies.sh: line 91: 3051 Segmentation fault (core > > dumped) p4d -V > > > > I guess I'll embark on that debugging session after all ;-) > > And I did. It turns out that r22.2 works both on ubuntu-20.04 and > ubuntu-22.04 (I locally verified for the former, proof for the latter: > https://github.com/dscho/git/actions/runs/3538941550/jobs/5940295721#step:3:384). > So I propose this fixup: > > -- snip -- > From 81e2d9a4f6ad2d2d9df27edfb666fe2112bdef57 Mon Sep 17 00:00:00 2001 > From: Johannes Schindelin <johannes.schindelin@gmx.de> > Date: Thu, 24 Nov 2022 09:31:41 +0100 > Subject: [PATCH] amend! ci: upgrade version of p4 > > ci: upgrade version of p4 > > There would be a segmentation fault when running p4 v16.2 on ubuntu > 22.04 which is the latest version of ubuntu runner image for github > actions. Upgrade p4 from version 16.2 to 22.2 will fix this issue. > > Also add some instructions to show errors of command "p4 -V", so we can > see why the output doesn't match. > > Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de> > Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com> > --- > ci/lib.sh | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/ci/lib.sh b/ci/lib.sh > index 6c658fa21227..eaa75ab3c07d 100755 > --- a/ci/lib.sh > +++ b/ci/lib.sh > @@ -252,7 +252,7 @@ ubuntu) > # were recorded in the Homebrew database upon creating the OS X > # image. > # Keep that in mind when you encounter a broken OS X build! > - export LINUX_P4_VERSION="19.2" > + export LINUX_P4_VERSION="22.2" > export LINUX_GIT_LFS_VERSION="1.5.2" > > P4_PATH="$HOME/custom/p4" > -- snap -- > > If you squash this in, please feel free to also use the updated commit > message. Hmm. Hold on. While `p4d` now no longer segfaults, it looks as if `git p4` is completely broken (see https://github.com/dscho/git/actions/runs/3538941550/jobs/5940295721#step:4:2005): failure: t9800.3 basic git p4 clone git p4 clone --dest="$git" //depot && test_when_finished cleanup_git && ( cd "$git" && git log --oneline >lines && test_line_count = 1 lines ) + git p4 clone --dest=/home/runner/work/git/git/t/trash directory.t9800-git-p4-basic/git //depot Perforce db files in '.' will be created if missing... fatal: 'p4' appears to be a git command, but we were not able to execute it. Maybe git-p4 is broken? error: last command exited with $?=128 not ok 3 - basic git p4 clone # # git p4 clone --dest="$git" //depot && # test_when_finished cleanup_git && # ( # cd "$git" && # git log --oneline >lines && # test_line_count = 1 lines # ) # I guess I will keep digging, Dscho
On Thu, Nov 24, 2022 at 4:16 PM Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote: > > From: Jiang Xin <zhiyou.jx@alibaba-inc.com> > > > > There would be a segmentation fault when running p4 v16.2 on ubuntu > > 22.04 which is the latest version of ubuntu runner image for github > > actions. Upgrade p4 from version 16.2 to 19.2 will fix this issue. > > I was about to embark on a debugging session when I had the splendid idea > to look at the Git mailing list archives to see whether anybody else had > encountered that particular problem. > > However, when I pushed a branch with this fix, it still segfaulted even > when downloading version 19.2 (link: > https://github.com/dscho/git/actions/runs/3538788474/jobs/5939977231#step:3:387): Yes, p4d 19.2 also has segfault errors, and p4 version 21.x and above is OK. Maybe yesterday I only check p4, and forgot to check p4d by hands. It is fixed in v2 by upgrade p4 to 21.2. -- Jiang Xin
On Thu, Nov 24, 2022 at 4:54 PM Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote: > > Me again, > Hmm. Hold on. While `p4d` now no longer segfaults, it looks as if `git p4` > is completely broken (see > https://github.com/dscho/git/actions/runs/3538941550/jobs/5940295721#step:4:2005): > > failure: t9800.3 basic git p4 clone > git p4 clone --dest="$git" //depot && > test_when_finished cleanup_git && > ( > cd "$git" && > git log --oneline >lines && > test_line_count = 1 lines > ) > > + git p4 clone --dest=/home/runner/work/git/git/t/trash directory.t9800-git-p4-basic/git //depot > Perforce db files in '.' will be created if missing... > fatal: 'p4' appears to be a git command, but we were not > able to execute it. Maybe git-p4 is broken? > error: last command exited with $?=128 > not ok 3 - basic git p4 clone > # > # git p4 clone --dest="$git" //depot && > # test_when_finished cleanup_git && > # ( > # cd "$git" && > # git log --oneline >lines && > # test_line_count = 1 lines > # ) > # > > I guess I will keep digging, > Dscho I found this is because python is not installed by default on ubuntu-22.04. This issue is fix in patch 3/3 of reroll v2. -- Jiang Xin
Hi, On Thu, 24 Nov 2022, Jiang Xin wrote: > On Thu, Nov 24, 2022 at 4:54 PM Johannes Schindelin > <Johannes.Schindelin@gmx.de> wrote: > > > > Me again, > > Hmm. Hold on. While `p4d` now no longer segfaults, it looks as if `git p4` > > is completely broken (see > > https://github.com/dscho/git/actions/runs/3538941550/jobs/5940295721#step:4:2005): > > > > failure: t9800.3 basic git p4 clone > > git p4 clone --dest="$git" //depot && > > test_when_finished cleanup_git && > > ( > > cd "$git" && > > git log --oneline >lines && > > test_line_count = 1 lines > > ) > > > > + git p4 clone --dest=/home/runner/work/git/git/t/trash directory.t9800-git-p4-basic/git //depot > > Perforce db files in '.' will be created if missing... > > fatal: 'p4' appears to be a git command, but we were not > > able to execute it. Maybe git-p4 is broken? > > error: last command exited with $?=128 > > not ok 3 - basic git p4 clone > > # > > # git p4 clone --dest="$git" //depot && > > # test_when_finished cleanup_git && > > # ( > > # cd "$git" && > > # git log --oneline >lines && > > # test_line_count = 1 lines > > # ) > > # > > > > I guess I will keep digging, > > Dscho > > I found this is because python is not installed by default on > ubuntu-22.04. This issue is fix in patch 3/3 of reroll v2. Excellent find! I was pulling out my hair because I could not reproduce the issue, but then I did not override `PYTHON_PATH` in my build and therefore the already-installed python3 was used. FWIW I confirm that this fixes the build. I restricted the build to the necessary minimum (and threw in an `action-tmate` step for more efficient debugging) and it passed the p4 tests: https://github.com/dscho/git/actions/runs/3539338333/jobs/5941122554 Thank you so much! Dscho
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh index f639263a62..291e49bdde 100755 --- a/ci/install-dependencies.sh +++ b/ci/install-dependencies.sh @@ -83,9 +83,9 @@ esac if type p4d >/dev/null 2>&1 && type p4 >/dev/null 2>&1 then echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)" - p4d -V | grep Rev. + p4d -V | grep Rev. || { echo >&2 "p4d: bad version"; p4d -V; exit 1; } echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)" - p4 -V | grep Rev. + p4 -V | grep Rev. || { echo >&2 "p4: bad version"; p4 -V; exit 1; } else echo >&2 "WARNING: perforce wasn't installed, see above for clues why" fi diff --git a/ci/lib.sh b/ci/lib.sh index 0c0767d354..8474b0f249 100755 --- a/ci/lib.sh +++ b/ci/lib.sh @@ -246,7 +246,7 @@ ubuntu) # were recorded in the Homebrew database upon creating the OS X # image. # Keep that in mind when you encounter a broken OS X build! - export LINUX_P4_VERSION="16.2" + export LINUX_P4_VERSION="19.2" export LINUX_GIT_LFS_VERSION="1.5.2" P4_PATH="$HOME/custom/p4"