add on_conflict attribute