User: Password:
Subscribe / Log in / New account

UPSERT can be simulated client-side

UPSERT can be simulated client-side

Posted Jun 13, 2014 8:09 UTC (Fri) by intgr (subscriber, #39733)
In reply to: UPSERT can be simulated client-side by Cyberax
Parent article: PGCon 2014: Clustering and VODKA

> Ironically, MSSQL does not have this problem because it locks tables, so a second transaction will be waiting until the first transaction is finished

Citation needed. This article contradicts your claim:

> MERGE *looks* like it will take care of concurrency for you, because implicitly it seems to a single, atomic statement. However, under the covers, SQL Server really does perform the different operations independently. This means that you could end up with race conditions or primary key conflicts when multiple users are attempting to fire the same MERGE statement concurrently

(Log in to post comments)


Posted Jun 14, 2014 13:59 UTC (Sat) by oldtomas (guest, #72579) [Link]

According to the wikipedia page on MVCC [1] MS SQL supports MVCC since SQL Server 2005. So they were late at the party (as often) but they seem to be there.

OTOH, given the installations I've seen in the wild (not the real showcases, mind you), most DBAs and application writers seem overly conservative and prefer to not know the feature exists.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds