erlang / docker-erlang-otp

the Official Erlang OTP image on Docker Hub

Home Page:https://hub.docker.com/_/erlang/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Erlang 24 large http requests with :httpc segfaults on apple silicon

nicksanford opened this issue · comments

Please let me know if this is the wrong place to post this.

I believe this is specifically a docker problem as running the steps to reproduce on erlang 24 installed via asdf on the host does not segfault.

I believe this is the issue observed here: https://elixirforum.com/t/phoenix-1-6-using-docker-containers-ends-with-segmentation-fault-error-139/42691

Downloading the following file using httpc results in a segfault on M1 macbook pro: https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.5.tgz

Hardware Overview:

  Model Name:	MacBook Pro
  Model Identifier:	MacBookPro18,1
  Chip:	Apple M1 Pro
  Total Number of Cores:	10 (8 performance and 2 efficiency)
  Memory:	16 GB
  System Firmware Version:	7429.41.5
  OS Loader Version:	7429.41.5

Steps to reproduce:

docker run -it --rm erlang:24 /bin/bash
root@890552a60546:/# erl
Erlang/OTP 24 [erts-12.1.5] [source] [64-bit] [smp:5:5] [ds:5:5:10] [async-threads:1]

Eshell V12.1.5  (abort with ^G)
1> application:ensure_all_started(ssl).
{ok,[crypto,asn1,public_key,ssl]}
2> application:ensure_all_started(inets).
{ok,[inets]}
3> httpc:request(get, {"https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.5.tgz", []}, [],[])
3> .
=WARNING REPORT==== 9-Dec-2021::00:09:35.950885 ===
Description: "Authenticity is not established by certificate path validation"
     Reason: "Option {verify, verify_peer} and cacertfile/cacerts is missing"

Segmentation fault

I'm going to close this as I think this is actually a docker for mac bug: docker/for-mac#5123