Unify and manage your data

Troubleshooting Concurrent Requests Errors

Learn how to diagnose and resolve errors from concurrent entity-update requests

TOO_MANY_CONCURRENT_REQUESTS_FOR_OBJECT (2008) is an exception that occurs when the platform cannot successfully complete a request due to repeated conflicts caused by simultaneous updates to the same object. A conflict is detected when the object's state changes between the start of processing and the write operation. In such cases, the system retries the request using an exponential backoff mechanism, which introduces increasing delays between retry attempts to reduce contention. By default, retries continue for up to about one minute. If the operation still fails after all retry attempts, the platform returns the 2008 error, which indicates sustained high concurrency on the object.

Error 2008: Too Many Concurrent Requests

Error: TOO_MANY_CONCURRENT_REQUESTS_FOR_OBJECT (2008)

What this error means

The system failed to complete the request because too many simultaneous operations targeted the same object. After several retry attempts with exponential backoff, the request failed with error 2008.

Why the error occurs

By default, the system retries a request approximately five times within one minute. In this case, a retry-enabled request attempted to update an object that other operations were continuously modifying. The system retried using exponential backoff, but the retry limits were reached before the conflict cleared.

How to fix the issue

Use the following approaches to resolve the error when it occurs.

  • Retry the request after a short delay, as the conflict may be temporary and resolve when concurrent operations decrease.
  • Use a controlled retry mechanism with backoff so the request can succeed once concurrent updates to the same object decrease.
  • Temporarily pause or slow down incoming requests if repeated failures occur, allowing in-flight operations on the object to complete.

Preventive Measures

Follow the below practices to avoid this error in the future.

  • Avoid sending parallel updates for the same object. This error is primarily caused by multiple simultaneous requests targeting a single record.
  • Reduce the frequency of updates to the same object to prevent repeated collisions within a short time window.
  • Review how data is prepared and loaded into the system to identify patterns that lead to frequent updates on the same object.
  • Modify batching and request patterns to minimize conflicts, ensuring that the same object is not included in multiple concurrent batches.
  • Sequence updates instead of sending them concurrently so that changes to the same object are processed in order.
  • Investigate and redesign the data ingestion process if retries do not help, focusing on reducing parallelism for the same object.