4 ms·
Given that most application developers started with something like a postgresql, or a MySQL that has pessimistic locking, and thus transactions rarely end in re
by sargun 5y ago
Given that most application developers started with something like a postgresql, or a MySQL that has pessimistic locking, and thus transactions rarely end in read / write conflicts (aborts), how have people (and potentially programming languages) adapted to optimistic concurrency control?
Also, when you say:
> On the other hand, server-side transactions use a more typical pessimistic relational lock. They open a transaction, do some work, and then commit it.
What do you mean? What are server-side transactions?
- evanweaver 5y agoWe haven't seen much difference in practice between frequent aborts and frequent timeouts. Both are better than deadlocks. I meant transactions issued from a server ("cloud") client to the database, as opposed to a mobile client.
- jhgb 5y ago> how have people (and potentially programming languages) adapted to optimistic concurrency control If they started with PostgreSQL, then they're already adapted to optimistic concurrency control, right?