[
https://issues.apache.org/jira/browse/VCL-775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andy Kurth closed VCL-775.
--------------------------
Resolution: Fixed
> 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.3.4#6332)