BruceQiu1996 opened a new issue, #573:
URL: https://github.com/apache/rocketmq-clients/issues/573

   ### Before Creating the Bug Report
   
   - [X] I found a bug, not just asking a question, which should be created in 
[GitHub Discussions](https://github.com/apache/rocketmq-clients/discussions).
   
   - [X] I have searched the [GitHub 
Issues](https://github.com/apache/rocketmq-clients/issues) and [GitHub 
Discussions](https://github.com/apache/rocketmq-clients/discussions)  of this 
repository and believe that this is not a duplicate.
   
   - [X] I have confirmed that this bug belongs to the current repository, not 
other repositories of RocketMQ.
   
   
   ### Programming Language of the Client
   
   C#
   
   ### Runtime Platform Environment
   
   windows 11
   visual studio 2022
   .net 7.0
   
   ### RocketMQ Version of the Client/Server
   
   server : 5.1.2
   client : <PackageReference Include="RocketMQ.Client" Version="5.1.0" />
   
   ### Run or Compiler Version
   
   visual studio 2022
   .net 7.0
   
   ### Describe the Bug
   
   Grpc.Core.RpcException: 'Status(StatusCode="Unavailable", Detail="Error 
starting gRPC call. HttpRequestException: An error occurred while sending the 
request. IOException: The request was aborted. IOException: An HTTP/2 
connection could not be established because the server did not complete the 
HTTP/2 handshake. IOException: The response ended prematurely while waiting for 
the next frame from the server.", 
DebugException="System.Net.Http.HttpRequestException: An error occurred while 
sending the request.
    ---> System.IO.IOException: The request was aborted.
    ---> System.IO.IOException: An HTTP/2 connection could not be established 
because the server did not complete the HTTP/2 handshake.
    ---> System.IO.IOException: The response ended prematurely while waiting 
for the next frame from the server.
      at 
System.Net.Http.Http2Connection.<ReadFrameAsync>g__ThrowMissingFrame|69_1()
      at System.Net.Http.Http2Connection.ReadFrameAsync(Boolean initialFrame)
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ThrowRequestAborted(Exception 
innerException)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendDataAsync(ReadOnlyMemory`1 
buffer, CancellationToken cancellationToken)
      at Grpc.Net.Client.StreamExtensions.WriteMessageAsync[TMessage](Stream 
stream, GrpcCall call, TMessage message, Action`2 serializer, CallOptions 
callOptions)
      at Grpc.Net.Client.Internal.PushUnaryContent`2.WriteMessageCore(ValueTask 
writeMessageTask)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendRequestBodyAsync(CancellationToken
 cancellationToken)
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at 
System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage
 request, Boolean async, Boolean doRequestAuth, CancellationToken 
cancellationToken)
      at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage 
request, Nullable`1 timeout)")'
   
   
   ### Steps to Reproduce
   
   1.import nuget packages from nuget
   <PackageReference Include="RocketMQ.Client" Version="5.1.0" />
   2.write code connect my rocketmq server and create a producer
   async static Task Main(string[] args)
           {
               const string endpoints = "192.168.0.50:9876";
               var clientConfig = new ClientConfig.Builder()
                   .SetEndpoints(endpoints)
                   .EnableSsl(false)
                   .Build();
   
               const string topic = "db_test";
               var producer = await new Producer.Builder()
                   .SetTopics(topic)
                   .SetClientConfig(clientConfig)
                   .Build();
           }
   
   3.throw exception
   Grpc.Core.RpcException: 'Status(StatusCode="Unavailable", Detail="Error 
starting gRPC call. HttpRequestException: An error occurred while sending the 
request. IOException: The request was aborted. IOException: An HTTP/2 
connection could not be established because the server did not complete the 
HTTP/2 handshake. IOException: The response ended prematurely while waiting for 
the next frame from the server.", 
DebugException="System.Net.Http.HttpRequestException: An error occurred while 
sending the request.
    ---> System.IO.IOException: The request was aborted.
    ---> System.IO.IOException: An HTTP/2 connection could not be established 
because the server did not complete the HTTP/2 handshake.
    ---> System.IO.IOException: The response ended prematurely while waiting 
for the next frame from the server.
      at 
System.Net.Http.Http2Connection.<ReadFrameAsync>g__ThrowMissingFrame|69_1()
      at System.Net.Http.Http2Connection.ReadFrameAsync(Boolean initialFrame)
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ThrowRequestAborted(Exception 
innerException)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendDataAsync(ReadOnlyMemory`1 
buffer, CancellationToken cancellationToken)
      at Grpc.Net.Client.StreamExtensions.WriteMessageAsync[TMessage](Stream 
stream, GrpcCall call, TMessage message, Action`2 serializer, CallOptions 
callOptions)
      at Grpc.Net.Client.Internal.PushUnaryContent`2.WriteMessageCore(ValueTask 
writeMessageTask)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendRequestBodyAsync(CancellationToken
 cancellationToken)
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at 
System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage
 request, Boolean async, Boolean doRequestAuth, CancellationToken 
cancellationToken)
      at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage 
request, Nullable`1 timeout)")'
   
   
   ### What Did You Expect to See?
   
   run normal
   
   ### What Did You See Instead?
   
   throw excepton
   Grpc.Core.RpcException: 'Status(StatusCode="Unavailable", Detail="Error 
starting gRPC call. HttpRequestException: An error occurred while sending the 
request. IOException: The request was aborted. IOException: An HTTP/2 
connection could not be established because the server did not complete the 
HTTP/2 handshake. IOException: The response ended prematurely while waiting for 
the next frame from the server.", 
DebugException="System.Net.Http.HttpRequestException: An error occurred while 
sending the request.
    ---> System.IO.IOException: The request was aborted.
    ---> System.IO.IOException: An HTTP/2 connection could not be established 
because the server did not complete the HTTP/2 handshake.
    ---> System.IO.IOException: The response ended prematurely while waiting 
for the next frame from the server.
      at 
System.Net.Http.Http2Connection.<ReadFrameAsync>g__ThrowMissingFrame|69_1()
      at System.Net.Http.Http2Connection.ReadFrameAsync(Boolean initialFrame)
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ProcessIncomingFramesAsync()
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.ThrowRequestAborted(Exception 
innerException)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendDataAsync(ReadOnlyMemory`1 
buffer, CancellationToken cancellationToken)
      at Grpc.Net.Client.StreamExtensions.WriteMessageAsync[TMessage](Stream 
stream, GrpcCall call, TMessage message, Action`2 serializer, CallOptions 
callOptions)
      at Grpc.Net.Client.Internal.PushUnaryContent`2.WriteMessageCore(ValueTask 
writeMessageTask)
      at 
System.Net.Http.Http2Connection.Http2Stream.SendRequestBodyAsync(CancellationToken
 cancellationToken)
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      --- End of inner exception stack trace ---
      at System.Net.Http.Http2Connection.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at 
System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage
 request, Boolean async, Boolean doRequestAuth, CancellationToken 
cancellationToken)
      at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, 
Boolean async, CancellationToken cancellationToken)
      at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage 
request, Nullable`1 timeout)")'
   
   
   ### Additional Context
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to