[ipboard.rb] ERRORE: violazione del vincolo univoco del valore della chiave duplicata "import_ids_pkey" (PG::UniqueViolation)

Ciao, sto cercando di importare un forum IPB 3.4 usando ipboard.rb, ho ottenuto questo errore con l’importazione degli argomenti:

.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:56:in `exec': ERROR:  duplicate key value violates unique constraint \"import_ids_pkey\" (PG::UniqueViolation)
DETAIL:  Key (val)=(discussion#2264) already exists.

Ho eliminato l’argomento 2264 dal database SQL e ho rieseguito lo script, ora funziona… ma ho perso l’argomento :sob: e altri 5 o 6 argomenti importanti con lo stesso errore. Cosa c’è che non va? Come posso importare questi argomenti?

Grazie.

Forse lo script sta usando l’ID sbagliato? O forse la versione da cui provieni non è quella che lo script si aspetta.

Non hai eseguito lo script, poi eliminato gli argomenti e provato a eseguirlo di nuovo, vero?

Ho riscontrato questo problema solo con 9 argomenti, tutto il resto è a posto e ho sempre iniziato con un database appena installato, controllato con diversi backup SQL e diversi host. Nessun errore trovato in ipboard (indice, database, ecc.).
Non capisco. :confused:

1 Mi Piace

Sembra qualcosa di non ovvio. La mia migliore ipotesi è qualcosa come. . . beh. Non ho una migliore ipotesi.

Forse la query sta in qualche modo restituendo quegli argomenti due volte? Potresti provare ad aggiungere .where ID=123 alla query che sta ottenendo gli argomenti per vedere se li sta in qualche modo ottenendo due volte e poi capire perché.

Dovrei aggiungerlo al file ipboard.rb?

Esaminerei la query nello script e la eseguirei manualmente come ho descritto per vedere quali sono i risultati.

Ok, ho trovato! :sunglasses:
Grazie per avermi indirizzato alla soluzione. Guarda, non so perché ma diversi post relativi ad argomenti problematici avevano il campo new_topic = 1.

Nota: ho modificato manualmente i campi e ora è tutto a posto.

1 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.