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
net/url: panic in QueryEscape #38643
Comments
Can you show us the output starting from the very beginning? There is some information missing, and it matters. You can omit the application code from the stack trace, that is probably not useful. Thanks. |
Fuzzing QueryEscape might surface a reproducer, if that hasn't been tried... |
Timed out in state WaitingForInfo. Closing. (I am just a bot, though. Please speak up if this is a mistake or you have the requested information.) |
@tomdeering-wf please take a look at Ian's request in #38643 (comment), the whole trace helps us out and currently we can't act on this issue. @networkimprov great idea, indeed that seems like the sensible way to find out, would you like to handle that? |
Tried this with 1.13.3 on linux/amd64, saw no panic. Maybe memory corruption?
|
Hi folks, sorry for the delay. Unfortunately I've lost the context beyond what is captured in this issue. We saw this happen just once in one of our cloud environments, and I also am unable to repro locally. I thought I'd captured all the pertinent info from the stack, sorry Ian. If I'm able to relocate that panic, I'll post back with more info. |
@ianlancetaylor found it. So, the stack above that was application code catching the panic and re-panicking. The subject of the panic was |
Thanks. Are you parsing URL values that are 59802754 bytes long? From looking at the code I don't see how this panic could happen other than memory corruption, but I may be missing something. |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Unknown. I wish I knew a reproducible test case to try.
What operating system and processor architecture are you using (
go env
)?Binary built with:
go env
OutputDeployed in Docker container running
busybox-1.31.1-r9
What did you do?
Our application code called the
url.QueryEscape
function with some (unfortunately unknown) input string.What did you expect to see?
Encoded string returned to application code.
What did you see instead?
Panic
runtime error: index out of range [59802754] with length 59802754
with the following stack:The text was updated successfully, but these errors were encountered: