Molti dei nostri link interni al forum sono rotti dopo il passaggio a un nuovo server. Avevo creato il nuovo server su un URL temporaneo, staging.example.com, per facilitare la transizione, ma ora che la transizione è completata, molti link su forum.example.com puntano ancora a staging.example.com (che non esiste più).
Ho cercato nel pannello di amministrazione > impostazioni eventuali tracce di “staging”.
Il DNS si è propagato da tempo.
Vedo questo vecchio riferimento, ma non sono sicuro che sia correlato.
Se l’unica soluzione possibile è la modifica manuale, avete qualche suggerimento su come trovare tutte le occorrenze? Il pulsante di ricerca non funziona bene per questo scopo.
> /var/www/discourse# discourse remap staging.example.com forum.example.com
> Rewriting all occurences of staging.example.com to forum.example.com
> THIS TASK WILL REWRITE DATA, ARE YOU SURE (type YES)
> YES
> Error: ERROR: duplicate key value violates unique constraint "unique_post_links"
> DETAIL: Key (topic_id, post_id, url)=(8718, 57455, https://forum.example.com/t/exampletopic/4606/336) already exists.
> The remap has only been partially applied due to the error above. Please re-run the script again.
L’ho rieseguito come indicato e ho ottenuto lo stesso errore, sulla stessa chiave (topic_id, post_id, url).
Posso accedere alla console di Rails ed eseguire alcuni comandi SQL/ActiveRecord se mi dici cosa eseguire. Oppure posso usare Data Explorer.
Ironicamente, l’argomento offensivo 8718 e il post 57455 si trovano in un messaggio privato tra due utenti che si lamentano del fatto che i link siano interrotti!
Ma usando l’explorer dei dati, vedo solo un post con id 57455. Non so perché remap stia lamentando.
Ho ripulito alcuni post e sono riuscito a completare il rimappaggio. Tuttavia, il processo di rigenerazione è arrivato al 30%, ha poi incontrato errori e ha bloccato il sistema, costringendomi a riavviarlo. Il sistema dispone di memoria e spazio su disco sufficienti.
Domanda: Dopo il riavvio, in ‘top’, c’è un processo Ruby che utilizza il 60% della CPU. Si tratta del job Rake? Riprenderà dopo il riavvio?