question

Upvotes
Accepted
18 0 0 3

.NET Refinitiv.Data - [PlatformSessionCore] RDP Authentication failed

Hi,

We have a .NET service running 24/7 based on the library provided by LSEG, specifically Refinitiv.Data version 1.0.0-beta5.

There was a problem that occurred on Monday, as we could not open session on our app start.

We got the below Exception that we do not have control over.

How can we control such scenario or similar ones?


 [WARN ] [ 44] [PlatformSessionCore] RDP Authentication failed

System.Threading.Tasks.TaskCanceledException: The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.

 ---> System.TimeoutException: A task was canceled.

 ---> System.Threading.Tasks.TaskCanceledException: A task was canceled.

   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)

   at System.Net.Http.HttpConnectionPool.HttpConnectionWaiter`1.WaitForConnectionAsync(Boolean async, CancellationToken requestCancellationToken)

   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 System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)

   --- End of inner exception stack trace ---

   --- End of inner exception stack trace ---

   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts)

   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)

   at Refinitiv.Data.Core.GrantPassword.AuthorizeAsync(Boolean takeExclusiveControl, CancellationToken cancellationToken)

   at Refinitiv.Data.Core.PlatformSessionCore.PerformOpenTasksAsync(CancellationToken cancellationToken)

#productc#rdprefinitiv-data-libraries
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

· Write an Answer
Upvotes
Accepted
237 4 2 3

Hello @lukasz.druczak

In this case, the service tried to open a platform session and during authentication the backend did not respond in time and the call received a 100 second timeout, cancelling the working task.

Refinitiv.Data.Core.PlatformSessionCore.PerformOpenTasksAsync(CancellationToken cancellationToken)
Refinitiv.Data.Core.GrantPassword.AuthorizeAsync(Boolean takeExclusiveControl, CancellationToken cancellationToken)
…
The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing

The session never Opened, because if you fail authentication for whatever reason, it goes from Pending to Closed. On the library level we do not control the back-end availability. Regarding control, you could implement a retry mechanism where for a given definition you can try reconnecting multiple times.


Given your case, we would like you to answer some question that could help us understand this issue better:

- Did the session eventually connect?

- How long did this go on for and how frequent is this issue?

- Could you please provide a code sample so we can attempt to recreate this scenario?


Best regards,

Baciu Wahl Cristian

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.