Pablo Avilés Cisneros (paviles@its.co.cr) reports a bug with a severity of 1
The lower the number the more severe it is.
Short Description
SELECT FOR UPDATE bug
Long Description
Hi, I'm encountered a problem with a select for update sentence with postgresql.
If I use...:
BEGIN TRANSACTION;
SELECT * FROM employees
WHERE status = 'A'
LIMIT 1
FOR UPDATE;
...
The problem, in the previous sentence, is block every record on employees, although we want one record, we want limit
1.The bug it seems the limit 1, because if I dispose the limit 1 line, only the return records are blocked.
If I use:
BEGIN TRANSACTION;
SELECT * FROM employees
WHERE (status = 1) AND (id_employee = 123)
ORDER BY id_employee
FOR UPDATE;
...
it block every record on employees, although we want one record, we want id_employee = 123. The bug it seems the order
byline, because if I dispose the order by line, only the return records are blocked.
Do you have an alternative way? Is this a bug? Any suggestion?
I'm using Delphi 6 with dbexpress, and the transaction was make with an TSQLClientDataSet component after an
TSQLConnection
Pablo Avilés Cisneros
Technology, ITS
Software Development Area
Technology, ITS
San José, Costa Rica
email: paviles@its.co.cr
Sample Code
No file was uploaded with this report