Skip to content

Postgres unique index with expressions is incorrectly transferred #113

Description

@nefremov

Hello,
My source Postgres 11 db has the following index:

create unique index ix_permission_unique on permissions(tenant_id, name, coalesce(scope_type, ''), coalesce(scope_id, ''));

COALESCE expressions are used to allow NULL only once in nullable columns (Postgres 15 has NULLS NOT DISTINCT option for this)

in destination database kitchen_sync creates index:

create unique index ix_permission_unique on permissions(tenant_id, name);

omitting expressions.

This leads to obvious sync error duplicate key value violates unique constraint "ix_permission_unique".

UPD:
destinasion db is Postgres 12. Source is synced to dedicated own db schema in destination db

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions