Om het performance-issue te omzeilen is getest in een grote Twinfield omgeving nadat een verbetering van herhaald proberen was doorgevoerd.
Per 5 administraties blijkt circa 1 seconde nodig om de BTW-aangiftes op te halen via:
set use-http-disk-cache@tfd false
set use-http-memory-cache@tfd false
use all@tfd
create or replace table tw_declarations@mss
as
select m.company_code
, m.company_name
, m.* except m.company_code, m.company_name prefix with 'DECLARATION_'
, d.xbrl
from Declarations@tfd m
join VatReturnAsXbrlByDocumentId@tfd(m.company_code, m.Id) d
where m.DocumentCode in ('VATICT', 'VATTURNOVER', 'YEARLYSUPPLETION')
and m.Year = 2024
itgensop090
/ HTTP-statuscode 524
Bij deze tests met honderden administraties trad 1x een HTTP-statuscode 524 op (itgensop090
). Bij herhaling van de query echter niet meer.
De itgensop090
was:
error code: 524.
The remote server returned an error:
(524) .
voor documentId 24019, partitie 286017 op Twinfield.Twinfield.VatReturnAsXbrlByDocumentId
, met call stack:
System.Net.WebException
Invantive.Basics.InvantiveSqlException
at System.Net.HttpWebRequest.GetResponse()
at Invantive.Data.Providers.Soap.SoapProvider.DoRequest(GlobalState owner, ExecutionOptions executionOptions, SqlExecutionStep sqlExecutionStep, HttpWebRequest request, String url, ObjectDefinition objectDefinition, String partitionCode, String callSafeNameOverrule, ParameterList parameters, Object requestData, String resultCacheId, String publicQueryParameters, ExecutionStatistics& executionStatistics)
De relevante meldingen zijn:
itgensop091: Download failed on attempt #1 without further retries:
itgensop068: POST try #1 from URL ‘https://api.accounting2.twinfield.com/webservices/declarations.asmx
’.
Het optreden van een itgensop090
bij deze puntquery is vreemd. itgensop090
is tot op heden op Twinfield enkel gezien bij niet-gepagineerd ophalen van transacties uit grote Twinfield-administraties. Blijkbaar kan deze error ook optreden bij (sommige of specifieke?) heel kleine dataretrievals. Zie Where clause van buiten view wordt niet in juiste volgorde toegepast.
In een volgende release zal hiervoor een verbetering doorgevoerd worden.
Samenvatting
Het oorspronkelijke probleem met itgenclr004
lijkt niet meer op te treden na verbeteringen.
Advies is om in afwachting van een prestatieverbetering de uitgeschreven code van de view te gebruiken om SQL Server te vullen zoals hierboven getoond.