Sometimes a message/frame is lost

Issue #138 open
nosalan created an issue

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)

  1. Peter Doornbosch repo owner
    • changed status to open

    Weird. Again ;-)_. I'll have a look will come back to it later. Thanks for reporting!

  2. nosalan 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

  3. nosalan 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 <

  4. Log in to comment