- changed status to open
Sometimes a message/frame is lost
I have a problem, seems like the Single Read sampler is missing some incoming messages. The problem manifests in a way that if the tested server is using continuation frames (of size 8KB), then sometimes, rarely, one the the continuation frame is missing on the sampler side. As I said, it doesn’t happen always, but sometimes. If the tested server is not using continuation frames, but instead sends large (up to 200KB) final frames, then the sampler is sometimes missing entire messages.
I am testing a WebSocket endpoint to which I’m sending binary data and the server returns text data. This is not a request-response communication. Instead, the client keeps sending, and server returns responses asynchronously when it likes. Since the reading/writing can’t be done in separate threads, I have them intertwined like this:
Main Loop (until all data was sent and received):
- send 1 packet [Single Write Sampler]
-
Read Sub-Loop (until ‘No response is returned’ and at least 500ms elapsed):
- Read [Single Read Sampler]
-
Read Sub-Loop (until all continuation frames are received if needed)
- Read [Single Read Sampler]
-
Auxiliary stuff, save in file, update variables
I am not using any thread delay in the loop - it is achieved using read timeout on Single Read sampler.
I thought it may be due to some intermediate layer, however, my other Python test client didn’t miss any messages.
Tested version 1.2.6
Comments (4)
-
repo owner -
reporter Thanks. I may add that I think I saw this behavior in v 1.2.2 too and I have impression that it is the first frame that is sometimes missing when continuation frames are used
-
repo owner You’re not using frame filters in this test plan, right?
-
reporter I only use Ping Pong filter, with automatic reply option, under each reading sampler.
sob., 16 lis 2019, 10:47 użytkownik Peter Doornbosch <
- Log in to comment
Weird. Again ;-)_. I'll have a look will come back to it later. Thanks for reporting!