diff --git a/dialect/postgres/postgres.go b/dialect/postgres/postgres.go index 769156b..8209d52 100644 --- a/dialect/postgres/postgres.go +++ b/dialect/postgres/postgres.go @@ -471,7 +471,7 @@ func (d *PGDialect) insert(ctx context.Context, table dialect.Table, data map[st query, args := lk.Insert(table.Name). Set(pairs...). - OnConflict(table.PrimaryKeyColumnName(), lk.DoUpdate(pairs...)). + OnConflict(table.PrimaryKeyColumnName(), lk.DoNothing()). Query() if err := d.exec(ctx, query, args...); err != nil { return fmt.Errorf("unable to insert %v+ to %s:%w", pairs, table.Name, err) diff --git a/etl/extractor.go b/etl/extractor.go index 25a0860..cf398a6 100644 --- a/etl/extractor.go +++ b/etl/extractor.go @@ -58,7 +58,9 @@ func (e *extractor) handleReferenceKeys(ctx context.Context, depth int, table di Query() e.logger.Debug(depthF(depth+1, "Fetch reference key"), - zap.String("reference_key", fmt.Sprintf("%s = %v", referenceKey, value))) + zap.String("reference_key", fmt.Sprintf("%s = %v", referenceKey, value)), + zap.String("table_name", table.Name), + ) if _, err := e.handle(ctx, depth+2, e.schema[referenceKey.Table.Name], query, args...); err != nil { return fmt.Errorf("unable to handle table %s (query: %s, args: %v): %w", referenceKey.Table.Name, query, args, err)