]
Ryan Emerson updated ISPN-8551:
-------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request:
JdbcStringBasedStore SQL Server upsert locks on data not key
------------------------------------------------------------
Key: ISPN-8551
URL:
https://issues.jboss.org/browse/ISPN-8551
Project: Infinispan
Issue Type: Bug
Components: Loaders and Stores
Affects Versions: 9.2.0.Alpha2, 9.1.3.Final
Reporter: Ryan Emerson
Assignee: Ryan Emerson
The below code applies ON function to the data column, it should be the key column
{code:java}
upsertRowSql = String.format("MERGE %1$s WITH (TABLOCK) " +
"USING (VALUES (?, ?, ?)) AS tmp (%2$s, %3$s, %4$s) " +
"ON (%1$s.%2$s = tmp.%2$s) " +
"WHEN MATCHED THEN UPDATE SET %3$s = tmp.%3$s, %4$s = tmp.%4$s
" +
"WHEN NOT MATCHED THEN INSERT (%2$s, %3$s, %4$s) VALUES
(tmp.%2$s, tmp.%3$s, tmp.%4$s);",
getTableName(), config.dataColumnName(), config.timestampColumnName(),
config.idColumnName());
{code}