dgraph.net icon indicating copy to clipboard operation
dgraph.net copied to clipboard

Grpc Error

Open wolfmic opened this issue 4 years ago • 5 comments

I'm trying to follow the readme and I'm getting a Grpc error.

instead of

var client = new DgraphClient(new Channel("127.0.0.1:9080", ChannelCredentials.Insecure));

I'm writing

var channel = GrpcChannel.ForAddress("http://127.0.0.1:9080");
var client = new DgraphClient(channel);

Then I'm trying to alter the database without success. Is there a special grpc lib I should use?

wolfmic avatar Jun 14 '20 16:06 wolfmic

@wolfheimrick I had the same issue in dotnet core. I have it now fixed by adding the following: AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);

ahaidar-oc avatar Jun 18 '20 03:06 ahaidar-oc

Oh thanks, but I still get the same error. Neither the query nor the mutation succeed.

The error I get:

ExceptionalError with Message='Status(StatusCode=Internal, Detail="Error starting gRPC call: An error occurred while sending the request.")', Exception='Grpc.Core.RpcException: Status(StatusCode=Internal, Detail="Error starting gRPC call: An error occurred while sending the request.")
   at Dgraph.Transactions.ReadOnlyTransaction.<>c__DisplayClass11_0.<<QueryWithVars>b__0>d.MoveNext()        
--- End of stack trace from previous location where exception was thrown ---
   at Dgraph.DgraphClient.DgraphExecute[T](Func`2 execute, Func`2 onFail)'

wolfmic avatar Jun 19 '20 20:06 wolfmic

@wolfheimrick I'm getting the same errors and haven't found a solution yet. However, you probably still need to set the ChannelCredentials to insecure. I've made a pull request #11 to update the README.

Aaronmsv avatar Jun 24 '20 14:06 Aaronmsv

I managed to fix the error. As @ahaidar-oc mentioned, you need AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true); More information can be found here: https://docs.microsoft.com/en-us/aspnet/core/grpc/troubleshoot?view=aspnetcore-3.0#call-insecure-grpc-services-with-net-core-client

Also, make sure that you are connection to the right port or you'll get that error while sending the request. The default port is 9080. I was an idiot and was using 8080.

The ChannelCredentials setting doesn't need to be set anymore it seems. It works just fine without it.

Aaronmsv avatar Jun 25 '20 10:06 Aaronmsv

I'm gonna check that again then. Thanks

wolfmic avatar Jun 28 '20 22:06 wolfmic

This issue has been stale for 60 days and will be closed automatically in 7 days. Comment to keep it open.

github-actions[bot] avatar Jul 12 '24 01:07 github-actions[bot]