-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[Linux] SIGSEGV: segmentation violation during cgo execution of cgoLookupIP and getaddrinfo #41398
Comments
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
Briefly looking at the logs I can see references such as
Edit: The crash seems to be triggered in the call to |
Does the issue happen if |
Also wondering about this. The cgo resolver uses threads so in high contention scenarios the netgo resolver might perform better by leveraging goroutines. |
Confirmed that setting |
There is a chance that this PR will fix it #41402 |
Sorry I didn't follow up with this topic. |
@pierrehilbert needs to be tested, it's quite hard to reproduce but I can try. This change was not included in 8.16 due to the product decision, so the only option is to build Filebeat from sources and run it in the Linux environment where the crash happens. @weltenwort would you mind to share your OS configuration, so I can reproduce the environment? Or perhaps you'd be willing to test it yourself? We need your Linux distribution, version, glibc version, etc. |
Hi @rdner 👋 I'm running arch with the stock kernel If you can assist me in setting up the build environment I could certainly test it on my machine. |
@pierrehilbert I just had a call with @weltenwort and the issue persists despite the glibc update (2.28 to 2.31) in Beats 8.17 binaries. Looks like the only action we can take now is to update the documentation and tell users to use Good news is that it's a stable deterministic crash, not a flaky behavior. Steps to reproduceOS: ArchLinux
filebeat.inputs:
- type: filestream
id: my-filestream-id
enabled: true
paths:
- "/var/log/*.log" # check if you have matching files on your machine, change if necessary
path.data: "/tmp/filebeat" # so, nothing is left after the test runs
logging:
level: debug # can be noisy but we would like to see everything
output.elasticsearch:
# in case you build from sources, disables the compatibility check
allow_older_versions: true
# Create an API key, pick the Beats format (!!!) and copy it to the config file
api_key: "<FIRST>:<SECOND>"
# Open the deployment management and copy the Elasticsearch endpoint to the config file
hosts: ["https://<HOSTNAME>:443"] # keep the 443 port.
In case the issue is there,
|
We have an internal example of multiple Beats failing shortly after startup with a segmentation fault in CGO code. The exact path leading to this is not clear yet because the problem is in CGO, although we do have the stack trace which is attached.
cgo_segfault.json
The text was updated successfully, but these errors were encountered: