Conversation

Replying to and
Pretty much. *Any* unique violation could trivially violate snapshot consistency (at least in RC). In general you could easily get an error due to insert from an xact that wasn't visible to your own RC insert statement's snapshot, of course. "True upsert" is intrinsically messy.
2