Itgenoda055: HTTP 408 Timeout errors op Exact Online

Op de Exact Online API’s voor Cashflow/Receivables and Cashflow/Payments treden altijd veel HTTP 408 - Timeout foutmeldingen op. Alle Invantive SQL-gebruikers samen krijgen er enkele honderden per maand.

Sinds april treden er ook vaker HTTP 408 foutmeldingen op Exact Online op voor andere API’s. Dit gaat om tientallen meldingen per maand buiten de nachtelijke uren, en sinds juni 2021 is dat aantal verdubbeld.

De Invantive SQL geeft dan uiteindelijk een itgenoda055 foutcode. De betrokken API’s buiten de nachtelijke uren zijn voor meer dan 90% lid van de volgende lijst:

  • bulk/CRM/Accounts
  • bulk/Documents/DocumentAttachments
  • bulk/SalesOrder/SalesOrderLines
  • bulk/financial/TransactionLines
  • financialtransaction/TransactionLines
  • inventory/AssemblyOrders
  • inventory/ItemWarehousePlanningDetails
  • read/crm/Documents
  • sync/TransactionLines
  • system/AllDivisions

De HTTP 408 Timeouts kunnen samenhangen met de HTTP 599 meldingen op Exact Online of veroorzaakt worden door een hogere belasting, applicatiefouten, een lagere beschikbare capaciteit of de oorspronkelijk voor 1 juli geplande wijzigingen op de API’s.

Invantive SQL zal vanaf 20.1.485 aangepast zijn om bij deze foutmeldingen slimmer te proberen de gegevens alsnog te verwerken. Het gedrag kan ingesteld worden via de volgende attributen:

  • simulate-http-408-errors: Simulate HTTP 408 errors when exchanging results with the OData endpoint.
  • simulate-http-408-errors-percentage: Percentage of simulated HTTP 408 errors when exchanging results with the OData endpoint.
  • download-error-408-request-timeout-max-tries: Maximum number of tries when the website reports a HTTP status 408 (default 2).
  • download-error-408-request-timeout-sleep-initial-ms: Initial sleep in milliseconds between retries when the website reports a HTTP status 408 (default 10.000 ms).
  • download-error-408-request-timeout-sleep-max-ms: Maximum sleep in milliseconds between retries when the website reports a HTTP status 408 (default 300.000 ms).
  • download-error-408-request-timeout-sleep-multiplicator: Multiplication factor for sleep between retries when the website reports a HTTP status 408 (default 2).