TOAST, slots de replicação, publicações, alterações de esquema e mapeamentos de tipos de dados — são abordadas no FAQ do ClickPipes for Postgres. As informações de lá também se aplicam às migrações do ClickHouse Managed Postgres.
Estou vendo um erro de “valor de entrada inválido para enum” durante a replicação
ALTER TYPE ... ADD VALUE, então novos valores de enum adicionados na origem após a configuração inicial do esquema farão com que as inserções falhem no destino.
Para corrigir isso, adicione o valor ausente ao tipo enum no Postgres de destino:
your_enum_type pelo nome do seu tipo Enum e 'new_value' pelo valor ausente na mensagem de erro.
Estou recebendo um erro de violação de restrição de unicidade ou de verificação durante a replicação
- Restrições de unicidade: Aplicamos as alterações como operações
MERGE/UPSERTem lote que gravam o valor mais recente para cada chave primária. Portanto, a ordem das operações para uma determinada chave pode não corresponder à ordem esperada pelo índice único. Isso pode violar temporariamente uma restriçãoUNIQUEdurante a transação, embora a restrição seja atendida após a conclusão doMERGE. O Postgres não pode adiar verificações de índice único da mesma forma que adia verificações de chave estrangeira; portanto, não é possível postergar a verificação até o fim da transação. Isso não afeta a consistência dos dados: a identidade da linha é definida pela chave primária, e a lógica doMERGEusa essa mesma chave primária. - Restrições de verificação: Uma restrição de verificação no destino pode ser mais rigorosa do que na origem, ou um estado intermediário durante um
MERGEem lote pode não atender à restrição, mesmo que o estado final a atenda. Assim como ocorre com as restrições de unicidade, isso não afeta a consistência dos dados, pois oMERGEusa a chave primária que define a identidade da linha.