tetratelabs / archive-envoy

Archive of Envoy® release binaries
Apache License 2.0
11 stars 4 forks source link

Darwin artefacts segfault (macOS 12/Monterey) #28

Closed juliaogris closed 2 years ago

juliaogris commented 2 years ago

I've downloaded on MacBook https://github.com/tetratelabs/archive-envoy/releases/download/v1.20.0/envoy-v1.20.0-darwin-amd64.tar.xz unpacked and executed and I get:

$ ./envoy
[1]    62274 segmentation fault  ./envoy

I noticed it for hermit installations that used to work and stopped working 1.18.3 which now segfaults, so does 1.19.1.

Fwiw, CI on linux seems to be working find with the precompiled releases.

codefromthecrypt commented 2 years ago

Hi, Julia. do you happen to be using Apple Silicon (M1)? If so, then switch amd64 -> arm64

codefromthecrypt commented 2 years ago

actually envoy doesn't support that still, so you'd need Rosetta 2 if this is relevant. If you aren't using Apple Silicon (M1) this and the above comments are irrelevant

juliaogris commented 2 years ago

Sorry - no nothing todo with M1. I'm on a amd64 architecture: 2.3 GHz 8-Core Intel Core i9

juliaogris commented 2 years ago

I've been using hermit installed envoy for last half year at least on the same machine and it used to be fine.

The only thing I can think of is: I had a system upgrade (macOS Monterey 12.0.1) since I last updated envoy - maybe that's related?

juliaogris commented 2 years ago

Actually - I even get this result when brew install envoy. Maybe there's something missing in the way of shared libraries?

juliaogris commented 2 years ago

I've confirmed with some colleagues: the issue can be reproduced on MacOS Monterey but not Big Sur. This is also true for hermit installs. For brew install envoy my colleague got an error message saying os pre-releases are unsupported.

codefromthecrypt commented 2 years ago

Thanks for the details! I just updated my Mac and also get the seg fault

$ ~/.func-e/versions/1.20.0/bin/envoy version
Segmentation fault: 11

Will try to find some help on this!

codefromthecrypt commented 2 years ago

looks like the build doesn't support Monterey yet until latest. I don't know if when that's built the same binary will work with both Big Sur and Monterey or not.. if not, that will be a pain.

https://github.com/envoyproxy/envoy/issues/18820

So, we're currently blocking on a release in envoy and if this is similar to most things it would only fix 1.20.x as usually build fixes aren't back ported.

codefromthecrypt commented 2 years ago

There's unlikely any solution until A. envoy 1.21 is out and B. homebrew is updated to use that. Once the two are true, this project's normal release process can archive a working version again.

Since Envoy 1.21 isn't scheduled until December, and may be later than that, the only viable workaround I'm aware of is to use Docker. This doesn't solve anything, but if you can get docker (or one of its alternatives) to work on your Mac, you could run Envoy's linux docker image until the actual product is sorted out.

codefromthecrypt commented 2 years ago

I've raised this PR to update homebrew to 1.20.1 as envoy's release notes claim this will work in macOS 12. I'm trying locally, but the build takes a long time, so don't know if it works or not.

https://github.com/Homebrew/homebrew-core/pull/90202

FYI @basvanbeek

codefromthecrypt commented 2 years ago

1.20.1 definitely works on Monterey when built on Monterey. Homebrew builds on the previous version (11), so it is left to be seen if building on 11 will work on 12. No CI provider can run Monterey, yet, so we will need to manually test.

codefromthecrypt commented 2 years ago

1.20.1 seems ok!

Screen Shot 2021-12-01 at 5 32 31 PM

$ func-e run --version
looking up the latest Envoy version
downloading https://archive.tetratelabs.io/envoy/download/v1.20.1/envoy-v1.20.1-darwin-amd64.tar.xz
starting: /Users/adrian/.func-e/versions/1.20.1/bin/envoy --version --admin-address-path /Users/adrian/.func-e/runs/1638351220387512000/admin-address.txt

/Users/adrian/.func-e/versions/1.20.1/bin/envoy  version: ea23f47b27464794980c05ab290a3b73d801405e/1.20.1/Modified/RELEASE/BoringSSL
codefromthecrypt commented 2 years ago

https://github.com/tetratelabs/func-e/releases/tag/v1.1.1 mentions this