-
Notifications
You must be signed in to change notification settings - Fork 541
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
When I send data at a high speed, the data will be wrong #4546
Comments
Are you using send buffering or not. The settings you have there show you set it to 1, but not that you set IsSet? But are you sure you're not changing or deleting the send buffers you give to MsQuic before you get the send completions? Just because the send function call returns doesn't mean we're fine with the buffer. Finally, why are you calling your variable gQUIC? 😂 This isn't Google QUIC... |
Maybe it means global variables. 😄 |
No,Whether I set it or not, it does not affect the result.
In fact, I waited for the Sent Event callback before sending the new data, and the data was previously filled and was not modified in the subsequent io test.
Haha, mainly because it is a simple IO test, the logic may be poor. g means global. |
Based on previous experience, this is caused by the app messing with the buffers passed into |
This is the relevant part of the code, I didn't have any chance to modify the buffer:
As mentioned above, I did not modify any buffers during the initial transmission, and I locked the buffer before sending and released the buffer after sending,strictly . If I have to say what is different between me and test, it should be that my client uses the certificate
If it is a problem on my side, it should be related to the size of my circular buffer, but in fact, the time when the abnormal data is generated is very random. Every time I run it, the problematic data appears randomly, and the picture in the previous comment can also prove that there is no problem with the data I printed in the line before |
Describe the bug
Simply sending 512*1024 0x00 data each time, with a 32-byte message header, about dozens to 200 times, through wireshark and my service, you can see that the message header has changed, and I make sure that the data I give to StreamSend has not changed.
My setting:
Affected OS
Additional OS information
No response
MsQuic version
main
Steps taken to reproduce bug
The structure of the first 12 characters is as follows
This should indicate that my buffer has not changed, but wireshark and my service have changed.
The data sent not only loses the first byte at the beginning, but also has some incredible changes in the subsequent bytes.
Expected behavior
Actual outcome
Additional details
No response
The text was updated successfully, but these errors were encountered: