Itgenboe161: Teamleader error aan de kant van Invantive

Sinds enige tijd speelt bij twee endpoints die wij aanroepen bij Teamleader de error itgenboe161. Dit gebeurt bij Teamleader.V1Flat.ProductsAll en Teamleader.V1Flat.ProjectsAll.

Wij roepen het endpoint aan via een Invantive App Online app, vanuit Azure Data Factory. De Data Factory geeft na iets meer dan een uur een time-out error (terwijl de time-out in Data Factory zelf ingesteld staat op 2 uur). In Invantive App Online monitoring zien we een time-out binnen Invantive die al na 15 minuten optreedt.

itgenboe161
The data download was cancelled after 15 minutes, probably by the user. Please optimize your query as described on https://go.invantive.com/en/power-bi-tuning. Then re-run the query.

De timeout in Invantive kan dus niet ontstaan zijn door een cancel actie vanuit de user of vanuit Azure Data Factory. De Copy Activity in Data Factory heeft pas 45 min na Invantive een timeout gegeven. Waarschijnlijk omdat het endpoint al te lang geen response meer gegeven had.

Enig idee hoe deze error wél kan ontstaan binnen App Online?

De melding itgenboe161 treedt alleen op als een actie naar Invantive App Online afgebroken wordt. De verschillende oorzaken kunnen zijn:

  • itgenpmr003: de consumerende HTTP client heeft het HTTP verzoek geannuleerd volgens de HTTP 2.0 standaard binnen het individueel ophalen van een rij uit de databron.
  • itgenpmr004: de consumerende HTTP client heeft het HTTP verzoek geannuleerd volgens de HTTP 2.0 standaard en dit is gemeten binnen het parallel ophalen van de databronnen.
  • De taak is afgebroken door de webserver aan de kant van Invantive App Online met een zogenaamde OperationCanceledException of TaskCanceledException.

Feitelijk zullen itgenpmr003 en itgenpmr004 doorelkaar optreden, afhankelijk welke code van de Invantive SQL engine het eerst het bericht doorkrijgt dat de afnemer weg is.

De HTTP statuscode van het verzoek aan Invantive App Online zal dan (indien nog mogelijk) op 499 ingesteld worden (Client Closed Request; een inofficiele standaard).

De maximale downloadduur via Invantive App Online en Invantive Bridge Online is momenteel ingesteld op 6 uur. Daarna zal een download altijd afgebroken worden.

De foutcode kan varieren. itgenboe161 wordt gebruikt als het om een langere download die niet vanuit Power BI, PowerBI.com of Power Query afkomstig is.

In dit geval lijkt uit de melding te volgen dat de download na exact 15 minuten wordt afgebroken (plus 15 seconden).

Een drietal vragen om de situatie beter in beeld te krijgen:

  • In welk percentage van de afgebroken Teamleader downloads via Azure Data Factory met een itgenboe161 is de time-out opgetreden na precies 15 minuten?
  • Welk percentage van de downloads van ProductsAll en ProjectsAll slagen wel bij de eerste poging van de dag (uitgaande van gebruik van een cache)?
  • Is het mogelijk een specifiek afgebroken request met afbeelding uit Invantive App Online Monitoring (na anonimisatie) hier toe te voegen?

Zie hieronder de antwoorden

  • In welk percentage van de afgebroken Teamleader downloads via Azure Data Factory met een itgenboe161 is de time-out opgetreden na precies 15 minuten?
    Bij de aangegeven calls (Projects en Products) komt het na precies 15 minuten voor. Daarnaast is het vannacht ook bij de Teamleader.V2.CompanyTags fout gegaan. Hier kwam de timeout voor na 1 minuut en 40 seconden. In de afgelopen weken is het ook bij andere endpoints voorgekomen (zo’n beetje elke nacht bij de Projects en Products specifiek, en wat andere calls zoals CompanyTags). Die kunnen we alleen niet terugzien in de logging van Invantive, gezien het al meer dan 1 dag geleden is.

  • Welk percentage van de downloads van ProductsAll en ProjectsAll slagen wel bij de eerste poging van de dag (uitgaande van gebruik van een cache)?
    In de afgelopen 30 dagen 0%.

  • Is het mogelijk een specifiek afgebroken request met afbeelding uit Invantive App Online Monitoring (na anonimisatie) hier toe te voegen?
    Zie hieronder voor de ProjectsAll van vannacht

Overigens heb ik vanochtend vanuit mijn browser de url van de request ook geopend. Toen is er wel een response binnen gekomen na ongeveer 1.5 - 2 uur.

Aangezien het systematisch optreedt vanuit Azure Data Factory en niet via een browser, en ook aansluit bij de melding, lijkt dit op een initiatief vanuit Azure Data Factory.

Advies is om de vraag in eerste instantie bij Microsoft Azure Support voor te leggen waar dit ingesteld kan worden.

Ik zie niet helemaal in waarom het een initiatief vanuit Data Factory zou moeten zijn? De foutmelding treedt eerst in Invantive App Online op (na bijv. een kwartier, of 1 minuut), en Azure Data Factory geeft pas een geruime tijd later een foutmelding (volgens verscheidene fora omdat er dan al te lang geen response meer komt vanuit het endpoint dat er nog iets bezig kan zijn).

Hadden jullie al naar de andere informatie gekeken die ik meegestuurd had? Bijvoorbeeld de foutmelding in App Online?

Er staat dus in de foutmelding dat er een user actie is die de cancel veroorzaakt, maar die actie is er niet.

Op basis van het protocolleren van het vertrek van de HTTP-client zien we geen reden om een bug te vermoeden. Het is een feature qua herleidbaarheid en serviceability.

De genoemde foutmelding wordt in Invantive App Online vastgelegd omdat de HTTP-client weggegaan is. In een volgende release zal in geval van Azure Data Factory de tekst anders geformuleerd worden zodat duidelijker is dat niet de user weggegaan is, maar de HTTP-client. De nieuwe meldingen zijn te vinden in Differentiation message codes for Invantive Bridge Online and Invantive App Online time-outs (Engels).

Advies is om het probleem met de time-out te adresseren bij Microsoft Azure Support.

2 berichten zijn gesplitst naar een nieuw topic: 503 HTTP status bij ophalen Teamleader tabel ProjectsAll

Deze vraag is automatisch gesloten na 2 weken inactiviteit nadat een mogelijk passend antwoord is gegeven. Het laatste gegeven antwoord is gemarkeerd als oplossing.

Gelieve een nieuwe vraag te stellen via een apart topic als het probleem opnieuw optreedt. Gelieve in de nieuwe vraag een link naar dit topic op te nemen door de URL er van in de tekst te plakken.