Hi,
I have the following error when I want to publish a protocol to a gRPC-enabled DataMiner. Is there anything that I can do to make this work?
DIS version: 2.44.1.4
The 'Test connection' is successful.
Note: The system is not in the local network.
Thx
System.ServiceModel.FaultException:
Message="Grpc.Core.RpcException: Status(StatusCode="Unknown", Detail="Bad gRPC response. HTTP status code: 500")
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Skyline.DataMiner.Net.GRPCConnection.JwtGrpcClientInterceptor.<HandleAsyncResponse>d__10`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Skyline.DataMiner.Net.GRPCConnection.GRPCConnection.TransportSpecificHandleMessage(ConnectionToken token, DMSMessage[] messages, Int32 timeout)
at Skyline.DataMiner.Net.Connection.InternalHandlePackedMessages(ConnectionToken tok, DMSMessage[] msgs, Int32 timeout)
at Skyline.DataMiner.Net.Connection.InternalHandleUnpackedMessages(DMSMessage[] msgs, Int32 timeout)
at Skyline.DataMiner.Net.Connection.HandleMessages(DMSMessage[] msgs, Int32 timeout)
at Skyline.DataMiner.Net.Connection.HandleMessage(DMSMessage msg, Int32 timeout)
at SLDisDMAComm.SLDisDmaCommService.UploadProtocol(String name, String version, String contents)"
Source="mscorlib"
StackTrace:
Server stack trace:
at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at SLDisDMACommShared.ISLDisDmaCommService.UploadProtocol(String name, String version, String contents)
at SLDisDMACommClient.DmaClient.UploadProtocol(String name, String version, String contents)
at Skyline.VSX.ProtocolEditor.Margin.PublishDropDownButton.<>c__DisplayClass19_0.<PublishProtocol>b__0(DoWorkEventArgs a)
at SLDisCommon.Tools.Tools.<>c__DisplayClass35_0.<RunInBackground>b__0(Object a, DoWorkEventArgs b)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
I experience the exact same behavior. Note that publishing automation scripts works, this is only when I’m trying to publish protocols.
Hi Jan
DIS is sending a SLNet call to upload the protocol and that the gRPC connection is returning a failure. Would it be possible to check if other SLNet calls also return a failure?
As DIS can successfully connect to the DataMiner, I don't think there is an issue in DIS itself. As I'm not an expert in gRPC and how it exactly works in DataMiner, I'll leave that up to the experts of that area.
It can also be useful to know which DataMiner version is being used.
Is it a particularly large protocol, maybe we’re having somewhat different size limits for gRPC?