Andy Kurth created VCL-775:
------------------------------
Summary: Request may fail due to timing issue in
computer_not_being_used and get_request_by_computerid
Key: VCL-775
URL: https://issues.apache.org/jira/browse/VCL-775
Project: VCL
Issue Type: Bug
Components: vcld (backend)
Affects Versions: 2.3.2
Reporter: Andy Kurth
Assignee: Andy Kurth
Priority: Minor
Fix For: 2.4
There is a rare situation where "reservation A" will fail because it determines
the computer assigned to "reservation A" is not available because "reservation
B" exists for that computer.
"Reservation A" calls new.pm:computer_not_being_used, which calls
utils.pm::get_request_by_computerid.
get_request_by_computerid first gathers a list of reservations which exist in
the database for the computer, then loops through each reservation call calls
get_request_info for each.
In between the time when the reservations were gathered and get_request_info is
called, "reservation B" may have ended and the request deleted from the
database. This causes "reservation A's" call to get_request_info to fail,
which eventually causes computer_not_being_used to return false and
"reservation A" fails.
A check should be added to determine if "reservation B" has been deleted.
--
This message was sent by Atlassian JIRA
(v6.2#6252)