Bug 604972 - inventory allows reservation of an already reserved machine
Summary: inventory allows reservation of an already reserved machine
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Beaker
Classification: Community
Component: web UI (Show other bugs)
(Show other bugs)
Version: 0.5
Hardware: All Linux
medium
high vote
Target Milestone: 0.4.x
Assignee: Raymond Mancy
QA Contact:
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-06-17 07:38 UTC by Karel Volný
Modified: 2015-05-04 02:09 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-06-29 14:18:46 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

Description Karel Volný 2010-06-17 07:38:34 UTC
Description of problem:
Please see the history for dell-pesc1420-01.rhts.eng.bos.redhat.com
https://beaker.engineering.redhat.com/view/dell-pesc1420-01.rhts.eng.bos.redhat.com

at 2010-06-16 13:04:11 the system got reserved by mbanas, but at 2010-06-16 13:04:12 I got the system, and I was able to start provisioning, but then the machine was "stolen" from me because of the earlier reservation

Version-Release number of selected component (if applicable):
Version - 0.5.43

Comment 1 Ales Zelinka 2010-06-21 10:11:28 UTC
Raising severity - this looks like a serious problem that could lead to hours of lost work. Also proposing for beaker_blocker - it is not a regression pre se, but an unreliable machine reservation is IMHO serious enough to stop us from switching from RHTS.

Please look into this. Thanks.

Comment 2 Marian Csontos 2010-06-21 13:47:52 UTC
Hint: This will not steal machine already reserved for some time as this only happens when machines are reserved concurrently - notice the small time interval within which this happened. Looks more like a transaction lock is missing somewhere: concurrent threads/processes runs as follows:

1.   check the machine is available

  2. check the machine is available

1.   reserve the machine

  2. reserve the machine

Comment 3 Bill Peck 2010-06-21 14:57:31 UTC
Ok, I found the code for manual reservation and indeed there is a chance that it can happen.  Should be easy to fix.

Comment 4 Bill Peck 2010-06-22 19:58:13 UTC
Fixed in git.  Will go out in Tomorrows upgrade.


Note You need to log in before you can comment on or make changes to this bug.