Het probleem is reproduceerbaar via:
select division
from exactonlinerest..journals
where division in (120, 121, 122)
of via bijvoorbeeld:
select division
from exactonlinerest..journals
where division = 120
waarbij de divisiecodes tussen 120 en 122 geen van allen voorkomen in de lijst van beschikbare divisies / partities.
Beide queries eindigen niet in de versie 24.0.673 tot/met 24.0.678.
Workaround
In de getoonde query worden de divisiecodes 3361081 en 3366632 gebruikt. Op beide divisies heeft de betrokken Exact Online-gebruiker geen toegang en/of via het use
-statement zijn die niet meer beschikbaar.
Het is niet met 100% zekerheid te zeggen doordat de gegevens (bewust) niet toegankelijk zijn, maar de datacontainer met ID #7857 heeft in ieder geval maar 1 partitie, terwijl er specifiek twee worden opgevraagd. Mogelijk zijn de queries die blijven hangen oorspronkelijk gemaakt voor een rapport voor een andere Exact Online-omgeving waarin de divisiecodes 3361081 en 3366632.
Advies is om de gebruikte filters te controleren.
Oorzaak
De oorzaak is gelegen in een verbetering om de grote storing met de vrijgave van locks te verbeteren zoals beschreven in:
Deze verbetering in versie 24.0.673 gebruikte ook als er 0 of 1 partities van toepassing zijn de parallelle verwerking om de vrijgave van locks te verbeteren.
Echter, er kunnen 0 partities geselecteerd zijn. Bijvoorbeeld door het gebruik van een where
-clause met ongeldige waarden in combinatie met de prestatieverbeteringen voor parallelle verwerking van partities (zie Prestatieverbeteringen Twinfield SQL driver).
De query zal in dit specifieke scenario nooit starten door een latent aanwezige bug in de parallelle verwerking.
Dit probleem kan voor zover bekend uitsluitend in Exact Online (OData) en Twinfield (SOAP) optreden. Voor zover bekend is dit probleem tot dusver bij geen andere gebruiker opgetreden.
Oplossing
In versie 24.0.679 is dit probleem opgelost. De parallelle verwerking van 0 partities is nu ook mogelijk, met als verwachte uitkomst 0 rijen in plaats van een eeuwigdurende uitvoering.
Versie 24.0.679 is inmiddels in productie genomen op Invantive Cloud.