console icon indicating copy to clipboard operation
console copied to clipboard

Mac M1: qemu segmentation fault on protobuf serialization

Open RiniJack opened this issue 4 years ago • 5 comments

Hi Kowl,

I'm getting this error on protobuf serialization when running in Mac M1: qemu: uncaught target signal 11 (Segmentation fault) - core dumped

details:

Image: quay.io/cloudhut/kowl:v1.4.0

config.yaml: image

Logs: image

RiniJack avatar Aug 24 '21 11:08 RiniJack

Hey @RiniJack , I'm unsure whether this is related to Protobuf or not, have you tested this?

I'm not sure whether we would need to provide a special docker image / binary for those who run it on ARM CPUs, but to date we have never worried about it. My expecation was that Docker would abstract that away, given that we use a Linux base image anyways.

weeco avatar Aug 24 '21 17:08 weeco

Hi @weeco, I think it is related to the Protobuf serialization, because I have been working for a while with Kowl under MAC M1 with no special issues. Yesterday I added the Protobuf section to the config.yaml in order to view proto messages in one of the topics, and got this error. When i removed the Protobuf section from the config.yaml the error has gone (but now i can see only the binary value of the proto messages in this topic)

RiniJack avatar Aug 25 '21 06:08 RiniJack

Thanks for the additional input. For proto parsing we rely on protoreflect (https://github.com/jhump/protoreflect/issues). I haven't seen a similar issue there, but I assume there's not much we could do about that the moment? :(.

weeco avatar Aug 25 '21 14:08 weeco

Faced a similar issue. OS - macOS big sur(11.5.2) chip - Apple M1 docker image - quay.io/cloudhut/kowl:master command - docker run
-p "8081:8080"
-e KAFKA_BROKERS="secret"
-e KAFKA_TLS_ENABLED="true"
-e KAFKA_SASL_ENABLED="true"
-e KAFKA_SASL_MECHANISM="PLAIN"
-e KAFKA_SASL_USERNAME="secret"
-e KAFKA_SASL_PASSWORD="secret"
quay.io/cloudhut/kowl:master

Error - {"level":"info","msg":"config filepath is not set, proceeding with options set from env variables and flags"} {"level":"info","ts":"2021-09-09T15:26:19.517Z","msg":"started Kowl","version":"master","git_sha":"af76fbf9d57b5492ea068efc93c46d9a7c70781d","built":"2021-09-08T18:52:25Z"} {"level":"info","ts":"2021-09-09T15:26:19.521Z","msg":"connecting to Kafka seed brokers, trying to fetch cluster metadata"}

qemu: uncaught target signal 11 (Segmentation fault) - core dumped

hantongliu avatar Sep 09 '21 15:09 hantongliu

Has anyone of you tried compiling the backend on your own? I'm unsure whether ARM64 docker hosts require a different docker image - unfortunately I'm pretty clueless about this and I don't have a M1 MacBook to reproduce :/.

weeco avatar Sep 09 '21 21:09 weeco

We nowadays have Docker images and binaries that target arm64. Can anyone try these images / binaries to see if this fixes the issue? We've also updated the protoreflect library to the latest available version

weeco avatar Dec 02 '22 21:12 weeco