Erro ao executar remap após alterar URL do site

Mudei o URL do meu site Discourse e estou seguindo as instruções em Change the domain name or rename your Discourse. Ao tentar executar o remap, estou recebendo repetidamente o seguinte erro. Ele continua me dizendo para reexecutar o script, mas o mesmo erro ocorre a cada vez.[1]

Não tenho certeza qual é o meu próximo passo aqui e ficaria grato por alguma orientação. Obrigado desde já! :seedling:

root@digitallysovereign:/var/discourse# ./launcher enter app
x86_64 arch detected.
root@digitallysovereign-app:/var/www/discourse# discourse remap discourse.tobiaseigen.org digitallysovereign.org
Rewriting all occurrences of discourse.tobiaseigen.org to digitallysovereign.org
WILL RUN ON 'default' DB
THIS TASK WILL REWRITE DATA, ARE YOU SURE (type YES): YES

Remapping tables on default...

ai_api_audit_logs=919
ai_secrets=1
backup_metadata=1
browser_pageview_events=3664
Error: ERROR:  duplicate key value violates unique constraint "idx_bprd_rollups_date_referrer_unique"
DETAIL:  Key (date, normalized_referrer)=(2026-07-01, digitallysovereign.org) already exists.
The remap has only been partially applied due to the error above. Please re-run the script again.
root@digitallysovereign-app:/var/www/discourse# discourse remap discourse.tobiaseigen.org digitallysovereign.org
Rewriting all occurrences of discourse.tobiaseigen.org to digitallysovereign.org
WILL RUN ON 'default' DB
THIS TASK WILL REWRITE DATA, ARE YOU SURE (type YES): YES

Remapping tables on default...

Error: ERROR:  duplicate key value violates unique constraint "idx_bprd_rollups_date_referrer_unique"
DETAIL:  Key (date, normalized_referrer)=(2026-07-01, digitallysovereign.org) already exists.
The remap has only been partially applied due to the error above. Please re-run the script again.
root@digitallysovereign-app:/var/www/discourse# discourse remap discourse.tobiaseigen.org digitallysovereign.org
Rewriting all occurrences of discourse.tobiaseigen.org to digitallysovereign.org
WILL RUN ON 'default' DB
THIS TASK WILL REWRITE DATA, ARE YOU SURE (type YES): YES

Remapping tables on default...

Error: ERROR:  duplicate key value violates unique constraint "idx_bprd_rollups_date_referrer_unique"
DETAIL:  Key (date, normalized_referrer)=(2026-07-01, digitallysovereign.org) already exists.
The remap has only been partially applied due to the error above. Please re-run the script again.

  1. Eu sei que a definição de insanidade é repetir a mesma coisa várias e várias vezes e esperar um resultado diferente! :rofl: ↩︎

parece haver uma colisão de restrições na tabela de análise do Postgres. seu banco de dados já inclui registros do novo domínio em datas específicas, então a ferramenta de remapeamento provavelmente está criando duplicatas e o Postgres está rejeitando-as.

eu tentaria excluir os registros do domínio antigo apenas na tabela específica para as datas em que o novo domínio já possui dados, a fim de preservar os dados históricos e desbloquear a ferramenta de remapeamento. faça um backup de segurança primeiro, no entanto.

tente isso:

cd /var/discourse
./launcher enter app
# criar um backup de segurança
discourse backup
# entrar no console do banco de dados
discourse db
/* excluir os registros em colisão */
DELETE FROM bprd_rollups 
WHERE normalized_referrer = 'discourse.tobiaseigen.org' 
AND date IN (
    SELECT date 
    FROM bprd_rollups 
    WHERE normalized_referrer = 'digitallysovereign.org'
);

/* sair do postgres */
\q

então execute a ferramenta de remapeamento novamente

discourse remap discourse.tobiaseigen.org digitallysovereign.org

então use a tarefa rake rebake_match em vez de um rebake completo

# rebake apenas posts que contêm a string do novo domínio
rake posts:rebake_match["digitallysovereign.org"]