PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Deadlock di Postgres su upsert simultanei

Mi vengono in mente tre soluzioni:

  1. Inserisci solo una riga per istruzione, ma è inefficiente.

  2. Ordina le righe prima di inserirle.

  3. Se si verifica un deadlock o un errore di serializzazione, riprovi una transazione.

Preferirei la terza soluzione a meno che gli errori non si verifichino molto spesso.