-
Notifications
You must be signed in to change notification settings - Fork 18k
syscall: stuck at syscall.Write #44083
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
Comments
Thanks for the bug report, but it's hard to see how this is a problem in Go. The stack trace shows that Go is calling the system call It would certainly be worth investigating if this is reproducible. |
Is the file in question on a network filesystem, e.g. NFS? Also the poller retries EINTR from syscalls, which can result in hangs. |
I don't see any way that retrying on In any case that is not what happened here. The goroutine stack trace shows that the goroutine has been waiting for the |
@networkimprov No. This was a normal file on a local SSD. |
Seems likely to be a transient hardware problem or kernel bug. A watchdog that can abort the app may be the only solution. |
Closing old issues that still have the WaitingForInfo label where enough details to investigate weren't provided. Feel free to leave a comment with more details and we can reopen. |
@jarifibrahim hi jarifibrahim! I also have met the issue. Did you solve it? |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Probably not.
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
This issue might not be reproducible.
I was running dgraph bulk loader https://github.com/dgraph-io/dgraph
$ dgraph bulk ...
. The process has been stuck for more than 30+ hours now. I'm looking at the goroutine dump and I see the followingThe file that we're writing to is a usual file and I can read/write to that file.
It looks like the syscall has been stuck for 3153 minutes. Since this syscall is stuck,
dgraph bulk
is also stuck and I see a bunch of goroutines trying to acquire the lockI've also attached the complete goroutine dump
goroutine.txt
What did you expect to see?
I expected the logger to not get stuck 🤷♂️
What did you see instead?
The log/log.go was stuck because a syscall wasn't making progress.
The text was updated successfully, but these errors were encountered: