I have deployed Gremlin.NET to Pivotal Cloudfoundry but the requests fail with "Unable to connect to the remote server". I suspect this is a cert issue. I see the Java implementation has a way to specify certs in the Cluster connection, but do not see an equivalent in the Gremlin.NET implementation.
The same code works properly on my local box (Windows). The only difference I can see is deployment to PCF and possibly trust issues?
Thanks
UPDATE:
The Java-based version works for us in PCF. We suspect because we are specifying the certs explicitly via keyfile, keyCertChainFile, and trustCertificateChainFile.
Coworker was able to repro this. Sorry for the delay, we had a release between then and now and I was unable to get this data. Stack Trace:
{System.Net.WebSockets.WebSocketException (0x80004005): Unable to connect to the remote server ---> System.Net.WebSockets.WebSocketException (0x80004005): Unable to connect to the remote server ---> System.Net.Http.WinHttpException (0x80072F8F): A security error occurred at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1.ConfiguredTaskAwaiter.GetResult() at System.Net.WebSockets.WinHttpWebSocket.<ConnectAsync>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Net.WebSockets.WebSocketHandle.<ConnectAsyncCore>d__20.MoveNext()
at System.Net.WebSockets.WebSocketHandle.<ConnectAsyncCore>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() a
t System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Net.WebSockets.ClientWebSocket.<ConnectAsyncCore>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.WebSocketConnection.<ConnectAsync>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.Connection.<ConnectAsync>d__9.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.ConnectionPool.<CreateNewConnectionAsync>d__10.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.ConnectionPool.<GetAvailableConnectionAsync>d__8.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.GremlinClient.<SubmitAsync>d__61.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.Remote.DriverRemoteConnection.<SubmitBytecodeAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Driver.Remote.DriverRemoteConnection.<SubmitAsync>d__42.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Gremlin.Net.Process.Remote.RemoteStrategy.<ApplyAsync>d__32.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Gremlin.Net.Process.Utils.WaitUnwrap(Task task)
at Gremlin.Net.Process.Traversal.DefaultTraversal2.ApplyStrategies()
at Gremlin.Net.Process.Traversal.DefaultTraversal2.GetTraverserEnumerator()
at Gremlin.Net.Process.Traversal.DefaultTraversal2.get_TraverserEnumerator()
at Gremlin.Net.Process.Traversal.DefaultTraversal2.MoveNext()
at Gremlin.Net.Process.Traversal.DefaultTraversal2.Next()
at grem_net_test.gremlinService.GetCount() in C:\cWorkbench\grem-net-test\gremlinService.cs:line 25
at gremlin_net_test.Controllers.ValuesController.GetString() in C:\cWorkbench\grem-net-test\Controllers\ValuesController.cs:line 52
at lambda_method(Closure , Object , Object[] )
at Microsoft.Extensions.Internal.ObjectMethodExecutor.Execute(Object target, Object[] parameters)
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeActionMethodAsync>d__12.MoveNext()}
User contributions licensed under CC BY-SA 3.0