-
Notifications
You must be signed in to change notification settings - Fork 997
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Subgraph built on Mac M1 chip fails: 'registering new sigaltstack failed' #2325
Comments
Pulled down latest images & saw the same, see RUST_BACKTRACE: 1 output
|
The issue is actually with running graph node on a mac M1, hopefully wasmtime will fix this in the next release. |
Greetings -- just dropping a note here after following a link from the Wasmtime issue -- FYI we're planning to cut our next release of Wasmtime on Monday and it should include a new PR that makes M1 work (though we still don't have it on CI so I can't say for sure; if not, we have a contributor who is actively working on M1 issues). Sorry and thanks for the patience! |
Ive been running on m1 mac ok for the past month and only today have I gotten this issue. Anyone know a docker image version which is working? |
@dylankilkenny since I am also trying to run I already found some things that might be breaking at compilation time, when we advance on this matter I will post the solution here 🙂 |
@dylankilkenny I've been able to run
To do this I just did this change on wasmtime = "0.25.0" to wasmtime = { git = "https://github.com/bytecodealliance/wasmtime.git", branch = "main" }
After these changes I think you should be go to go 😊 |
@otaviopace thanks for the help, its back up and running now 🙂 |
I just stumbled upon this bug again when I saw this problem on a M1. The graph-node was running in a docker-compose. First we tried with
After reading through this issue I though it should be fixed, so we tried Although the
So I see two problems here:
@dylankilkenny @otaviopace @azf20 Can you please test if you can successfully deploy a subgraph to your local graph-node running with docker-compose and pointing to |
I replicated this with 0.23.1. I know @otaviopace and @leoyvens looked into this previously? |
I'll look into it 🙂 Last time it was a problem with an update in the |
It's a known bug that running graph-node in docker on an M1 will crash, the solution for now is to run it outside docker, until wasmtime fixes it. @schmidsi not sure what's going on there, but running an arbitrary commit isn't something we support. |
Oh, it's that docker only bug, I thought it was breaking again using the raw binary. |
I think for this we gonna have to look into our whole docker image build process, tweak some things until we find what's breaking on the M1 (maybe we're adding something that has incompatibility with |
@otaviopace yes, we could try to fix it on our side by seeing if it reproduces outside docker when running this build process https://github.com/graphprotocol/graph-node/blob/master/docker/Dockerfile#L16-L29. |
Hello again from the Wasmtime side -- we're definitely interested in whatever this breakage is. I'm curious (unfortunately I don't have M1 hardware myself to try, sorry!): does running a vanilla (Docker on Mac/M1 would mean that this is Linux/aarch64, and we do test that but not on M1 chips specifically, so I'm curious if there's something weird about the combination of the two...) |
We actually run Thanks for showing interest in our problem 😊 |
I just wanted to share the observation that it was a different error with this specific commit. Maybe this helps to narrow it down. |
Getting the same error on M1 - any fix on the horizon? |
Hey @kennym, I still didn't have much time to tackle this issue yet. For now you either have to run |
@otaviopace thanks - that worked! |
Is there a fix for this in the latest releases? |
Just FYI, this seems working for the issue mentioned on the title by @azf20 , but then it raises the issue mentioned by @schmidsi. #2325 (comment) |
Sorry for the long delay on this guys, I've been able to reproduce the error in a isolated example, and I've created an issue in the bytecodealliance/wasmtime#3203 @cfallin if you can take a look, that would be great 😊 |
Well, after a lot of help from the In the current version of Docker for Mac (3.6.0), it uses version 5.0.1 of I'll keep an eye on Docker release notes and post here when this is fixed 🙂 |
Thanks @otaviopace! Any idea if it's possible to get this on the Docker for Mac team's radar? |
@azf20 I just created an issue there to see if they have any plans on updating QEMU's version on Docker for Mac 😊 docker/for-mac#5919 |
It looks like Docker's position is that running x86-64 images on aarch64 is not guaranteed to work. We should fix this on our side by publishing multi-architecture tags. |
Nice - @leoyvens that is a matter of adding some additional metadata? |
I'm not sure of what exactly needs to change, but it should be a change only to the docker build process. |
This is what worked for me: Mac M1 13" 2020Thanks to: #2325 (comment)
docker-compose.yml version: "3"
services:
ipfs:
image: ipfs/go-ipfs:v0.4.23
ports:
- "5001:5001"
volumes:
- ipfs-data:/data/ipfs
postgres:
image: postgres
ports:
- "5432:5432"
command: ["postgres", "-cshared_preload_libraries=pg_stat_statements"]
environment:
POSTGRES_USER: graph-node
POSTGRES_PASSWORD: let-me-in
POSTGRES_DB: graph-node
volumes:
- postgres-data:/var/lib/postgresql/data
ganache:
image: trufflesuite/ganache-cli
ports:
- "8545:8545"
command: --deterministic --db /data/ganache
volumes:
- ganache-data:/data/ganache
volumes:
ipfs-data:
postgres-data:
ganache-data: graphnode command (must run inside of graphnode repo) cargo run -p graph-node --release -- \
--postgres-url postgresql://graph-node:let-me-in@localhost:5432/graph-node \
--ethereum-rpc mainnet:http://127.0.0.1:8545 \
--ipfs 127.0.0.1:5001 Note: downgrading to https://hub.docker.com/layers/graphprotocol/graph-node/2c23cce/images/sha256-9182194b742c2c1a70658f7f01aa49a30a8ecd2353f7ae1e7cfd43be73f7c262?context=explore didn't work for me because I was using subgraph version "0.0.5" which requires additional changes to node-modules that broke other stuff https://githubmemory.com/repo/austintgriffith/scaffold-eth/issues/456 |
This is working as of Docker for Mac |
Do you want to request a feature or report a bug?
Bug
*What is the current behavior?
Indexing a subgraph built on a Mac M1 Chip fails after deployment with the following error:
This was also reported in Discord:
Reports error
Mentions M1
On both local node and hosted service
The same subgraph built and deployed on an Intel chip Mac works.
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.
Build and deploy a subgraph from a Mac with a new M1 chip.
In a second tab run a local graph node
Deploy a simple local contract to the chain and to the subgraph
Error visible in the graph node logs
Versions:
What is the expected behavior?
Subgraph starts indexing as normal.
The text was updated successfully, but these errors were encountered: