[Kimchi-devel] [PATCH] Bug 440 Fix
Christy Perez
christy at linux.vnet.ibm.com
Fri Oct 3 16:34:48 UTC 2014
On 10/03/2014 10:34 AM, Aline Manera wrote:
>
> On 09/23/2014 03:56 AM, Yu Xin Huo wrote:
>> On 9/22/2014 10:57 PM, Aline Manera wrote:
>>>
>>> On 09/22/2014 04:14 AM, huoyuxin at linux.vnet.ibm.com wrote:
>>>> From: Yu Xin Huo <huoyuxin at linux.vnet.ibm.com>
>>>>
>>>> 2 Issues:
>>>> 1. In menu widget, it handle the passin params incorrectly.
>>>> 2. Filter out storage pools without any available volume.
>>>>
>>>> Signed-off-by: Yu Xin Huo <huoyuxin at linux.vnet.ibm.com>
>>>> ---
>>>> ui/js/src/kimchi.guest_storage_add.main.js | 2 +-
>>>> ui/js/widgets/select-menu.js | 6 +++---
>>>> 2 files changed, 4 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/ui/js/src/kimchi.guest_storage_add.main.js
>>>> b/ui/js/src/kimchi.guest_storage_add.main.js
>>>> index a8c5acb..6e01d3e 100644
>>>> --- a/ui/js/src/kimchi.guest_storage_add.main.js
>>>> +++ b/ui/js/src/kimchi.guest_storage_add.main.js
>>>> @@ -61,7 +61,7 @@ kimchi.guest_storage_add_main = function() {
>>>> var options = [];
>>>> if (result && result.length) {
>>>> $.each(result, function(index, storagePool) {
>>>> - if ((storagePool.state=="active") &&
>>>> (storagePool.type !== 'kimchi-iso')) {
>>>> + if ((storagePool.state=="active") &&
>>>> (storagePool.type !== 'kimchi-iso') && storagePool.nr_volumes) {
>>>
>>> It is not enough to determine if a pool has or not free volumes.
>>> For each pool, you need to call:
>>>
>>> GET /storagepools/<pool>/storagevolumes?ref_count=0
>>>
>>> If the response is a list > 0, the pool should be listed as an
>>> option, otherwise not.
>>
>> If sending a request for each pool, then how many requests will need
>> to be sent?
>> If there are many pools defined, this will greatly lose performance.
>>
>> So backend API need to be enhanced either of below:
>> 1. Add an attribute in each pool to indicate whether there is free
>> volumes when /storagepools.
>> 2. Add a filter parameter to /storagepools to response pools with free
>> volumes directly.
>>
>> I prefer the 2nd.
>
> Agree.
> Second option will have better performance.
Are we ever going to allow shared disks? I feel like we should plan for
that possibility when redesigning what we show for a storage pool.
>
>>
>>>
>>>> options.push({
>>>> label: storagePool.name,
>>>> value: storagePool.name
>>>> diff --git a/ui/js/widgets/select-menu.js
>>>> b/ui/js/widgets/select-menu.js
>>>> index ad53200..c4b0209 100644
>>>> --- a/ui/js/widgets/select-menu.js
>>>> +++ b/ui/js/widgets/select-menu.js
>>>> @@ -36,8 +36,10 @@
>>>> var selectedClass = 'active';
>>>> var itemTag = 'li';
>>>> var item;
>>>> + that.listControl.find('li').remove();
>>>> + that.label.text("");
>>>> + that.target.val("");
>>>> if (options.length > 0) {
>>>> - that.listControl.find('li').remove();
>>>> $.each(options, function(index, option) {
>>>> item = $('<' + itemTag + '>' + option.label
>>>> +'</' + itemTag + '>');
>>>> item.data('value', option.value);
>>>> @@ -58,8 +60,6 @@
>>>> that.target.change();
>>>> }
>>>> });
>>>> - } else {
>>>> - kimchi.message.error.code('KCHAPI6006E');
>>>> }
>>>> },
>>>>
>>>
>>
>>
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>
More information about the Kimchi-devel
mailing list