Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-74564

[REG: 5.9->5.10]: When using nested event loops with SSL based websockets there will be a performance degregation

    XMLWordPrintable

Details

    • 6a7cea64d20759ee4ff1e0c2f682868e2907661f

    Description

      [REG: 5.9->5.10]: When using nested event loops with SSL based websockets there will be a performance degregation. With Qt 5.9 when running the sslechoserver and then the sslechoclient the following output (give or take) will be shown:

      0.496 - WebSocket connected 
      0.497 - enter loop1 
      0.498 - send "0" 
      0.499 - enter loop2 "0" 
      0.500 - send "1" 
      0.501 - enter loop2 "1" 
      0.502 - send "2" 
      0.503 - enter loop2 "2" 
      0.504 - send "3" 
      0.505 - enter loop2 "3" 
      0.507 - send "4" 
      0.508 - enter loop2 "4" 
      0.509 - send "5" 
      0.509 - enter loop2 "5" 
      0.510 - send "6" 
      0.511 - enter loop2 "6" 
      0.512 - send "7" 
      0.512 - enter loop2 "7" 
      0.513 - send "8" 
      0.515 - enter loop2 "8" 
      0.517 - send "9" 
      0.518 - enter loop2 "9" 
      0.520 - Message received: "0" 
      0.521 - Message received: "1" 
      0.522 - Message received: "2" 
      0.524 - Message received: "3" 
      0.525 - Message received: "4" 
      0.526 - Message received: "5" 
      0.527 - Message received: "6" 
      0.528 - Message received: "7" 
      0.529 - Message received: "8" 
      0.532 - Message received: "9" 
      0.734 - tick 
      0.986 - tick 
      1.237 - tick 
      1.484 - tick 
      1.518 - leave loop2 "9" 
      1.521 - leave loop2 "8" 
      1.522 - leave loop2 "7" 
      1.523 - leave loop2 "6" 
      1.525 - leave loop2 "5" 
      1.526 - leave loop2 "4" 
      1.528 - leave loop2 "3" 
      1.529 - leave loop2 "2" 
      1.532 - leave loop2 "1" 
      1.534 - leave loop2 "0" 
      1.536 - leave loop1 
      1.539 - Message received: "quit" 
      

      whereas in Qt 5.10 and later:

      0.438 - WebSocket connected 
      0.440 - enter loop1 
      0.441 - send "0" 
      0.442 - enter loop2 "0" 
      0.443 - send "1" 
      0.444 - enter loop2 "1" 
      # 0.670 - tick 
      # 0.917 - tick 
      # 1.165 - tick 
      # 1.423 - tick 
      1.442 - send "2" 
      1.445 - enter loop2 "2" 
      1.446 - send "3" 
      1.446 - enter loop2 "3" 
      1.669 - tick 
      1.924 - tick 
      2.166 - tick 
      2.421 - tick
      ...
      

      where it shows that it is already taking much longer than before.

      Attachments

        1. qtbug74564.zip
          15 kB
          Andy Shaw

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              alex1973tr Alex Trotsenko
              andysh Andy Shaw
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes