database: ignore insertLayer collisions to make it truly idempotent

This commit is contained in:
Quentin Machu 2016-02-05 18:08:23 -05:00 committed by Jimmy Zelinskie
parent d19a4348df
commit d3b14106a9

View File

@ -265,6 +265,11 @@ func (pgSQL *pgSQL) InsertLayer(layer database.Layer) error {
Scan(&layer.ID)
if err != nil {
tx.Rollback()
if isErrUniqueViolation(err) {
// Ignore this error, another process collided.
return nil
}
return handleError("i_layer", err)
}
} else {