Exact Online: The SSL connection could not be established, see inner exception. Authentication failed because the remote party has closed the transport stream

Sinds een tijdje heb ik een Power BI rapport online staan dat ik in de Power BI omgeving heb ingericht zodat je data 4x daags wordt ververst. Sinds een tijdje krijg ik een aantal foutmeldingen:

Deserializing 2,159,452 characters took an extreme amount of time

in (meerdere varianten) gevolgd door:

itgenoda039

The data for partition '1249771' could not be downloaded.

The SSL connection could not be established, see inner exception. Authentication failed because the remote party has closed the transport stream.

The SSL connection could not be established, see inner exception.

Authentication failed because the remote party has closed the transport stream.

Enig idee wat dit veroorzaakt?

Ik heb de foutmelding teruggezocht in Systeemberichten. Het gaat om een foutmelding met code itgenoda039 (heb ik in oorspronkelijke tekst er bij gezet; met foutcode is veel gemakkelijker om oorzaak op te vragen).

Dit betekent dat geen verbinding met het herkomstplatform - in dit geval Exact Online - gemaakt kan worden doordat het opzetten van een veilige SSL verbinding niet lukt.

Anders dan de technische voorlopers zoals Invantive Data Replicator laadt Invantive Bridge Online real-time bij: pas zodra er data opgevraagd wordt, worden de benodigde gegevens opgehaald (pull).

Deze SSL-foutmelding trad op rond 09:30 UTC, dus niet tijdens een reboot van Exact Online. Buiten 1 vergelijkbare foutmelding op Loket zie ik alleen van jullie omgeving de afgelopen dagen deze foutmelding.

Ik vermoed dat er ergens in Exact wat fout gaat.

Advies is om allereerst de rechten te controleren: men heeft division scoping aangezet en dat leidt tot nogal wat storingen. Controleer svp of je niet per abuis een aantal administraties uitgezet hebt voor de app volgens deze stappen.

We zullen bij Exact Online een verzoek indienen (nummer 02763095) of dit een bekend probleem is. Het gaat om Exact Online verbindingen met als eerste IP-adres 40.74.30.216. Dit is een soort snelweg die uiteindelijk bij de Exact servers uitkomt. Als er iets uit het verzoek komt, dan werken we het hier bij.

De melding over “Deserializing…took an extreme amount of time” kun je overslaan; het is een waarschuwing die onze software intern vastlegt i.v.m. een performance-bug in een gebruikte JSON bibliotheek.

Nog even intern overlegd en nagekeken.

Het blijkt dat sinds 27 november jongstleden in totaal 22x deze foutmelding is opgetreden bij 6 verschillende Exact Online abonnementen zowel in on-premise als online versies van Invantive SQL, en zowel in .NET Framework als .NET 5 en productie en BETA-versies. De foutmelding is in de periode daarvoor tot 21 september 2019 niet voorgekomen op Exact Online. We hebben online geen oudere meetpunten.

Het probleem treedt alleen op bij de REST API’s; op de XML API’s is het probleem niet teruggevonden. Al met al is het 22x foutgegaan de laatste 3 weken op ruim 200 miljoen API calls.

Los van het ticket bij Exact hebben we daarom besloten om de OData code te verfijnen en een SSL handshake failure te behandelen als een timeout of een transport-level verbindingsopbouwfout. Dit betekent dat een beperkt aantal pogingen op laag niveau uitgevoerd zal worden om de verbinding op te bouwen, ook als de eerste SSL handshake faalt.

We weten niet of dat de succeskans verhoogt als het API server issue blijft optreden, maar is in ieder geval een extra stap om de foutenkans te verkleinen. Deze functionaliteit zal meekomen met de volgende BETA- en productiereleases.

In de periode van 25 december 2020 tot 8 januari 2021 is er op Exact Online binnen 8 Exact Online abonnementen en 8 administraties (partities) in totaal 27x deze foutmelding opgetreden. Vooral op 5 januari is het probleem tussen 9:00 en 15:00 herhaaldelijk opgetreden.

Bij Exact is er een algemeen ticket voor aangemaakt met nummer 02763095. Mocht je zelf een ticket indienen, refereer hier dan aan. Voor het overige adviseren we een upgrade naar 20.0.134. Dat neemt de storing niet weg, maar zorgt er voor dat er geen gevolgschade is.