Hi!
I have a problem understanding how transactions with serializable isolation level works in postgresql. What exactly may
causea serialization error?
My problem is a system where process one adds data to a database. Shortly afterwards, process two reads and possibly
modifiesthe same data (keys are not touched). When large amounts of data arrives at about the same time, I get loads of
serializationerrors in process two. In a perfect world this should not happen, since data that is entered by process
oneis almost always different from the data that at the same time is being read and written by process two.
I have tried increasing max_pred_locks_per_transaction, but it seems to have no effect.
I do retry the transactions, and eventually they succeed, but my concern here is the amount of errors I get at certain
periods.Am I expecting too much of serializable isolation level transactions, or is there anyting else that I am
missing?
- Vegard