banConcurrentIndexCreationInTransaction

Diagnostic Category: lint/safety/banConcurrentIndexCreationInTransaction

Since: vnext

Note

This rule is recommended. A diagnostic error will appear when linting your code.

Sources: - Inspired from: squawk/ban-concurrent-index-creation-in-transaction

Description

Concurrent index creation is not allowed within a transaction.

CREATE INDEX CONCURRENTLY cannot be used within a transaction block. This will cause an error in Postgres.

Migration tools usually run each migration in a transaction, so using CREATE INDEX CONCURRENTLY will fail in such tools.

Examples

Invalid

CREATE INDEX CONCURRENTLY "field_name_idx" ON "table_name" ("field_name");

How to configure


{
  "linter": {
    "rules": {
      "safety": {
        "banConcurrentIndexCreationInTransaction": "error"
      }
    }
  }
}