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

QtGrpc: improve relation between (client) operation (context) and channel

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.9
    • GRPC
    • None
    • 13
    • Foundation Sprint 116, Foundation Sprint 117, Foundation Sprint 118, Foundation Sprint 119, Foundation Sprint 120, Foundation Sprint 121, Foundation Sprint 122, Foundation Sprint 123, Foundation Sprint 124

    Description

      The proxy object "QGrpcOperationContext" which the internal Http2Handler uses to communicate with the RPC operation has some lifetime issues in combination with its corresponding (loose) Http2Handler counterpart.

      Currently, for code like the following:

      QCOMPARE_NE(streamPtr, client()->testMethodServerStream(request).get()); 

      The right entry is creating and immediately destroying the object. In case of a active connection the current implementation will continue to process the request even though nothing to respond to is alive!

      We need to improve the channel implementation to keep track of such cases (e.g. flagging handlers as dirty / dead) and do some cancellation.

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-129160
          # Subject Branch Project Status CR V

          Activity

            People

              dennisoberst Dennis Oberst
              dennisoberst Dennis Oberst
              Vladimir Minenko Vladimir Minenko
              Alex Blasche Alex Blasche
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There is 1 open Gerrit change