code change · fixIntegration & APIsofficial - Microsoftreviewed - checked by Opus

#9146 [Shopify] Fix GraphQL rate limiter under-waiting after elapsed time

The Shopify connector's GraphQL rate limiter was waiting incorrectly when time had elapsed between requests, causing it to re-issue requests too early into the throttle window. The fix anchors the wake time to the current moment plus remaining wait time instead of incorrectly subtracting the elapsed gap twice.

Pull request · merged into main (BC30) on 2026-07-07 by onbuyuka · 2 files (+27 -2), 1 AL · fix · tier official · reviewed (checked by Opus)

What changed

  • Rate limiter waited too short when time had passed since the last Shopify response, which caused avoidable GraphQL throttling on high-volume shops
  • The wait time already accounts for elapsed time, but anchoring it at LastRequestedOn subtracted that elapsed gap a second time
  • Wake time is now anchored at CurrentDateTime plus the remaining wait
  • Removed the redundant earlier NextRequestAfter := CurrentDateTime assignment
  • Added a test that checks the limiter waits for the remaining time after some time has elapsed
  • Behaviour changes for users or extensions.

AL objects touched

Context

  • Work items: AB#641550
  • Labels: AL: Apps (W1)
  • Systems: integration

Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).