-
Notifications
You must be signed in to change notification settings - Fork 30.4k
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
v8.deserialize() crashes with "Unable to deserialize cloned data." #56802
Comments
Without knowing more about the file you are attempting to deserialize and how it was created, it's going to be a bit difficult to diagnose here... and downloading some random binary off mega.nz is not something I'm keen to try or would recommend others to try. Can you provide a more self-contained repro case that does not involve downloading a file blindly? |
Thank you for your response. I understand your concerns regarding downloading files from unknown sources. The file I provided serves as a guaranteed reproduction case. Unfortunately, since the To clarify, the issue arises with the following straightforward flow:
The hosting of the file is not critical for me, even having it as a file isn't critical for me. I sent it as a file, because I have to give to you somehow the payload that this function can't handle and this function accepts binary data.
If either of these approaches would be more safe, please let me know. Alternatively, if you recommend any other methods for securely handling this situation, I’m ready to accommodate. I believe this issue showcases that v8.serialize <-> v8.deserialize flow is actually broken and can not be trusted. I’m open to any approach you find most suitable and willing to provide additional details, such as logs, specific environment info etc. I’ve already tested this on both macOS (Darwin 21.3.0 on arm64) and Debian (4.19.0-25-cloud-amd64 on x86_64) with the same results, suggesting it isn’t tied to a single platform. If there is anything else you’d like me to check or any steps you’d recommend for a more thorough debug, let me know. |
Here's the reproduction: |
Version
v21.7.2
Platform
Subsystem
No response
What steps will reproduce the bug?
How often does it reproduce? Is there a required condition?
Always
What is the expected behavior? Why is that the expected behavior?
The function should work, or there should be a workaround on how to operate with big files.
What do you see instead?
In case of my code I receive:
Additional information
The file is an output from
v8.serialize
As far as I understand these two functions should be compatible with each other, so it's either deserialize that's throwing error despite receiving a correct object, or it's v8.serialize silently producing incorrect output.
Various variants of this kind of file format work just fine, the problem seems to appear once the file grows big.
The text was updated successfully, but these errors were encountered: