>Why ZoneWideStoragePoolAllocator implements "filter" method (and doesn't call 
>that of base class) rather than just using that of base class?
>ZoneWideStoragePoolAllocator#filter method seems doesn't care "avoid" 
>parameter, doesn't skip iSCSI type storage pool even if a volume is a RootDisk.

The first question seems like a bug to me.

I am not sure about the IOPS

Prachi

-----Original Message-----
From: ynoj...@ynojima.net [mailto:ynoj...@ynojima.net] On Behalf Of Yoshikazu 
Nojima
Sent: Tuesday, June 17, 2014 1:07 PM
To: dev@cloudstack.apache.org
Subject: ZoneWideStoragePoolAllocator#filter seems weird for me

Hi,

ZoneWideStoragePoolAllocator#filter seems weird for me.

ZoneWideStoragePoolAllocator and ClusterScopeStoragePoolAllocator are allocator 
classes to select storage pool.
They extends AbstractStoragePoolAllocator class, which provides "filter" method 
to exclude unavailable storage pools.

Why ZoneWideStoragePoolAllocator implements "filter" method (and doesn't call 
that of base class) rather than just using that of base class?

ZoneWideStoragePoolAllocator#filter method seems doesn't care "avoid"
parameter, doesn't skip iSCSI type storage pool even if a volume is a RootDisk.
(These functions are implemented in
AbstractStoragePoolAllocator#filter method, which used by
ClusterScopeStoragePoolAllocator.)
On the other hand, AbstractStoragePoolAllocator#filter doesn't call 
storageMgr.storagePoolHasEnoughIops, so a cluster wide primary storage would be 
allocated more volumes than its designated IOPS capacity.

Is there any difference between a zone wide primary storage and a cluster wide 
primary storage except its scope?
If it is a bug, I'll fix it.

Regards,
Noji

Reply via email to