When executing UPDATE, MERGE, or DELETE statements from multiple clients simultaneously, you could encounter the following error:
Your statement '<id>' was aborted because the number of waiters exceeds the 8 statements limit
Snowflake limits the number of certain types of DML statements that target the same table from multiple clients.
Note: INSERT and COPY statements are never blocked, because Snowflake supports concurrent DML operations for these statements.
Several options are available:
- Issue the DML messages using a single client. This option would also allow inserting multiple values in one DML statement.
- Gather all updates happening during a session, and issue a single DML statement that includes all of them.
- Create multiple audit tables, e.g. one per session, and at the end of the session copy all the records from it to the main table.
All Snowflake clients