Bug 807719 - VDSM: getVmsList get broken when running without sdUUID
VDSM: getVmsList get broken when running without sdUUID
Product: oVirt
Classification: Community
Component: vdsm (Show other bugs)
x86_64 Linux
unspecified Severity medium
: ---
: 3.3.4
Assigned To: Dan Kenigsberg
Depends On:
  Show dependency treegraph
Reported: 2012-03-28 10:49 EDT by Avi Tal
Modified: 2016-04-18 03:02 EDT (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2012-06-17 14:26:50 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: Storage
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
vdsm log (6.93 MB, text/x-log)
2012-03-28 10:49 EDT, Avi Tal
no flags Details

  None (edit)
Description Avi Tal 2012-03-28 10:49:05 EDT
Created attachment 573362 [details]
vdsm log

Description of problem:
getVmsList(spUUID='253deb29-c59b-44fa-a498-96fe895d4ddd', sdUUID=None, options=None)

{'status': {'message': "General Exception, UUID: 'Storage.None'", 'code': 3000}}

Thread-2686::WARNING::2012-03-28 16:24:11,460::resourceManager::713::ResourceManager.Owner::(acquire) Unexpected exception caught while owner 'e7b733af-1f86-450f-8197-46ea9bfcc83f' tried to acquire 'Storage.None'
Traceback (most recent call last):
  File "/usr/share/vdsm/storage/resourceManager.py", line 699, in acquire
    resource = manager.acquireResource(namespace, name, locktype, timeout)
  File "/usr/share/vdsm/storage/resourceManager.py", line 459, in acquireResource
    request = self.registerResource(namespace, name, lockType, callback)
  File "/usr/share/vdsm/storage/resourceManager.py", line 480, in registerResource
    if not self._resourceNameValidator.match(name):
TypeError: expected string or buffer
Thread-2686::ERROR::2012-03-28 16:24:11,462::task::853::TaskManager.Task::(_setError) Task=`e7b733af-1f86-450f-8197-46ea9bfcc83f`::Unexpected error
Traceback (most recent call last):
  File "/usr/share/vdsm/storage/task.py", line 861, in _run
    return fn(*args, **kargs)
  File "/usr/share/vdsm/logUtils.py", line 38, in wrapper
    res = f(*args, **kwargs)
  File "/usr/share/vdsm/storage/hsm.py", line 1135, in getVmsList
    vars.task.getSharedLock(STORAGE, sdUUID)
  File "/usr/share/vdsm/storage/task.py", line 1306, in getSharedLock
    self.resOwner.acquire(namespace, resName, resourceManager.LockType.shared, timeout)
  File "/usr/share/vdsm/storage/resourceManager.py", line 714, in acquire
    raise se.ResourceException(fullName)
ResourceException: General Exception, UUID: 'Storage.None'
Thread-2686::DEBUG::2012-03-28 16:24:11,462::task::872::TaskManager.Task::(_run) Task=`e7b733af-1f86-450f-8197-46ea9bfcc83f`::Task._run: e7b733af-1f86-450f-8197-46ea9bfcc83f ('253deb29-c59b-44fa-a498-96fe895d4ddd', None) {} failed - stopping task
Comment 1 Royce Lv 2012-04-17 02:14:23 EDT
http://gerrit.ovirt.org/#change,3560,provide patch for this bug.

For None sdUUID, we should not try to get resource lock directly,instead, we should get Vms from the master domain of the pool.

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