The architect flow uses a scheduled trigger set to run every 15 minutes. The logs show the connector’s retries kicking in, but it’s still dropping articles. It’s not a schema issue - validated that with the POST /knowledge/v1/articles endpoint directly.
Anyone else run into this? Is there a way to increase the connector’s concurrency without overloading the KCS instance?
At my last shop, we had similar issues - the 503s were more frequent when the article count was large. Instead of retrying immediately, a small, random backoff helps - maybe between 1 and 5 seconds. Also, check the max-concurrent-sync-requests parameter in the KCS connector configuration; it defaults to 10, but increasing it might help if your articles aren’t too large. We found that setting it to 20 stabilized things.
The KCS connector’s throttling is… something. At my last shop, we ended up wrapping the sync calls in a retry loop with exponential backoff - up to 10 seconds, then just giving up. It’s a band-aid, sure, because GC should just handle this gracefully. Here’s the gist:
import time
import random
for attempt in range(5):
try:
# Sync call here
break
except Exception as e:
wait_time = (2 ** attempt) + random.random()
time.sleep(wait_time)
edit: Honestly, the API should return a proper 429 instead of a 503. Just sayin’.