quota reservations fail w/ postgres (SELECT FOR UPDATE w/ a join)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
High
|
Dan Prince |
Bug Description
Using Nova Folsom. I'm seeing the following exceptions as of today when using the new quota reservations w/ PostgreSQL:
2012-05-24 02:04:20 ERROR nova.quota [req-f9dc9781-
2012-05-24 02:04:20 TRACE nova.quota Traceback (most recent call last):
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota self._driver.
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota db.reservation_
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota return IMPL.reservatio
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota return f(*args, **kwargs)
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota for reservation in _quota_
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib/
2012-05-24 02:04:20 TRACE nova.quota with_lockmode(
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota return list(self)
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota return self._execute_
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota result = conn.execute(
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota params)
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota compiled_sql, distilled_params
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota context)
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota context)
2012-05-24 02:04:20 TRACE nova.quota File "/usr/lib64/
2012-05-24 02:04:20 TRACE nova.quota cursor.
2012-05-24 02:04:20 TRACE nova.quota NotSupportedError: (NotSupportedError) SELECT FOR UPDATE/SHARE cannot be applied to the nullable side of an outer join
2012-05-24 02:04:20 TRACE nova.quota 'SELECT reservations.
--------------
PostgreSQL doesn't support SELECT FOR UPDATE when using a join like we do in _quota_reservations so we should implement this query in another manner.
Changed in nova: | |
assignee: | nobody → Dan Prince (dan-prince) |
status: | New → In Progress |
importance: | Undecided → High |
Changed in nova: | |
milestone: | none → folsom-2 |
status: | Fix Committed → Fix Released |
Changed in nova: | |
milestone: | folsom-2 → 2012.2 |
Fix proposed to branch: master /review. openstack. org/7801
Review: https:/