def findall(self, **kwargs):
        """
        Find all items with attributes matching ``**kwargs``.
        
        This isn't very efficient: it loads the entire list then filters on
        the Python side.
        """
        found = []
        searches = kwargs.items()
        
        for obj in self.list():
            try:
                if all(getattr(obj, attr) == value for (attr, value) in searches):
                    found.append(obj)
            except __HOLE__:
                continue
        
        return found
dataset/ETHPy150Open jacobian-archive/openstack.compute/openstack/compute/base.py/ManagerWithFind.findall