Opened 4 years ago
Closed 4 years ago
#60555 closed defect (fixed)
beekeeper-studio 1.4.0: failure when building in buildbot environment
Reported by: | herbygillot (Herby Gillot) | Owned by: | herbygillot (Herby Gillot) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | Cc: | ||
Port: | beekeeper-studio |
Description
The following PR:
https://github.com/macports/macports-ports/pull/7195
...introduces a new port, beekeeper-studio.
This port built successfully for the most part in the Azure and Travis CI environments, and as a result was merged into the ports tree.
However, upon running in the buildbot environment, the build process for this port crashed for all macos versions.
- Build log for macos 10.14: https://build.macports.org/builders/ports-10.14_x86_64-builder/builds/60487/steps/install-port/logs/stdio
- Build log for macos 10.15: https://build.macports.org/builders/ports-10.15_x86_64-builder/builds/31248/steps/install-port/logs/stdio
The pertinent error is:
SIGILL: illegal instruction PC=0x1065880 m=6 sigcode=1 goroutine 39 [running]: runtime.asyncPreempt() /usr/local/Cellar/go/1.14/libexec/src/runtime/preempt_amd64.s:8 fp=0xc000408c00 sp=0xc000408bf8 pc=0x1065880
The crash is happening in a helper Go binary that helps to package the JS into an electron app.
When we do a dump of the binary and view the instruction at the address referenced by the illegal instruction signal, we see that it is VZEROUPPER
:
$ go tool objdump ./app-builder | grep '0x1065880' preempt_amd64.s:8 0x1065880 c5f877 VZEROUPPER
This is reminiscent of an issue with an earlier version of Go (1.14) that had a bug on older amd64 chips when running the VZEROUPPER
instruction:
https://github.com/golang/go/issues/37459#issuecomment-591180408
My guess is that the binary that the app-builder-bin node package is being distributed with has probably been built elsewhere using that older version of Go.
One possible workaround for this port would be for us to build the helper binary ourselves using the most recent version of Go in ports and swap it into the build process.
Change History (4)
comment:1 Changed 4 years ago by mf2k (Frank Schima)
Keywords: | maintainer removed |
---|---|
Owner: | set to herbygillot |
Status: | new → assigned |
comment:2 Changed 4 years ago by herbygillot (Herby Gillot)
comment:3 Changed 4 years ago by herbygillot (Herby Gillot)
comment:4 Changed 4 years ago by mf2k (Frank Schima)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
beekeeper-studio is now building for macOS 10.11, 10.13, 10.14 and 10.15
I've opened an issue in the app-builder repo about the version of Git the distributed binary is being built with here: https://github.com/develar/app-builder/issues/37, but this issue is resolved, and this ticket can be closed.