Qlik Community

GeoAnalytics

Discussion Board for collaboration regarding Qlik GeoAnalytics.

Announcements
Support Case Portal has moved to Qlik Community! Read the FAQs to start exploring Support resources.
cancel
Showing results for 
Search instead for 
Did you mean: 
vinestim
Contributor III
Contributor III

underlying connection was closed: An unexpected error occurred on a send IdevioGeoAnalyticsConnector

Geoanilytics has been working fine for the past two years, but started failing this morning. Can someone help here? StackTrace log from server: 

C:\ProgramData\QlikTech\Custom Data\IdevioGeoAnalyticsConnector\Log\StackTrace.txt

System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host

   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)

   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)

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

   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)

   at System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)

   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)

   at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)

   at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)

   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

   at System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)

   at System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)

   at System.Net.ConnectStream.WriteHeaders(Boolean async)

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

   at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)

   at System.Net.HttpWebRequest.GetRequestStream()

   at IdevioGeoAnalyticsConnector.Utils.makePostRequest(String url, String action, String postData, Boolean useDefaultUrl)

   at IdevioGeoAnalyticsConnector.Utils.executeRequest(String url, String postData, String operation, Boolean useDefaultUrl)

   at IdevioGeoAnalyticsConnector.RequestHandler.getTables()

   at IdevioGeoAnalyticsConnector.QvIdevioAnalyticsConnection.ExtractQuery(String query, List`1 tables)

   at QlikView.Qvx.QvxLibrary.QvxConnection.Execute(String query, String dataPipeName, String extraParamters, Action`1 onError, Action clearMExecuteError)

   at QlikView.Qvx.QvxLibrary.QvxServer.HandleExecute(QvxRequest request)

   at QlikView.Qvx.QvxLibrary.QvxServer.Run(String parentString, String pipeName)

 

 

1 Solution

Accepted Solutions
ker
Employee
Employee

Hi Vinestim,

Sorry for causing you issues. As part of a security requirement we've had to set ga.qlikcloud.com to only allow TLS 1.2 (it previously also allowed TSL 1.0 and 1.1).

There are two ways to solve this:
1. Upgrade to .NET 4.6 or newer. TLS 1.2 should then be enabled by default.
2. Make sure that you have a version of .NET that supports TLS 1.2, see https://docs.microsoft.com/en-us/configmgr/core/plan-design/security/enable-tls-1-2#update-net-frame..., then update the connector to the February 2018 version or newer.

You can also switch to our old URL, ga.idevio.com, in the meantime as it has more lax requirements and still allows old versions of TLS (and even plain HTTP, though you would then send things unencrypted which is not advisable).

View solution in original post

5 Replies
vinestim
Contributor III
Contributor III
Author

Is the site for the connector still "

https://ga.qlikcloud.com/

"

ker
Employee
Employee

Hi Vinestim,

Sorry for causing you issues. As part of a security requirement we've had to set ga.qlikcloud.com to only allow TLS 1.2 (it previously also allowed TSL 1.0 and 1.1).

There are two ways to solve this:
1. Upgrade to .NET 4.6 or newer. TLS 1.2 should then be enabled by default.
2. Make sure that you have a version of .NET that supports TLS 1.2, see https://docs.microsoft.com/en-us/configmgr/core/plan-design/security/enable-tls-1-2#update-net-frame..., then update the connector to the February 2018 version or newer.

You can also switch to our old URL, ga.idevio.com, in the meantime as it has more lax requirements and still allows old versions of TLS (and even plain HTTP, though you would then send things unencrypted which is not advisable).

View solution in original post

ker
Employee
Employee

For anyone using GeoAnalytics Plus getting connection issues since yesterday:
Updating to the latest version of Java 7 (Java 7u131 or higher), or anything newer than Java 7 should fix it.

vinestim
Contributor III
Contributor III
Author

Switching from  https://ga.qlikcloud.com to https://ga.idevio.com worked nicely. I will work with my IT department to upgrade our servers as soon as possible. Thank you

aurelien_thiery
Contributor II
Contributor II

Hi,

I had the same problem and i found the solution:

- Use IISCrypto utility for only activate protocols TLS 1.1 and TLS 1.2

- Activate all the Cipher Suites

-Reboot the server

In my case we have our own GeoAnalytics server, i add this lines in IdevioGeoAnalyticsConnector.exe.config file (under C:\Program Files\Common Files\QlikTech\Custom Data\QvIdevioConnector):

<system.net>
<defaultProxy useDefaultCredentials="true" enabled="true">
<proxy usesystemdefault="False" autoDetect="False" proxyaddress="http://<proxyserver.domain>:80" bypassonlocal="true" />
</defaultProxy>
</system.net>