On Mon, Dec 05, 2011 at 02:43:12PM +0000, Dominic Curran wrote:
> @@ -100,10 +99,9 @@ def update(session, args):
>      host_mgmt_device = None
>      pool_mgmt_macs = {}
>      if new_controller:
> -        for n in session.xenapi.PIF.get_all():
> -            rec = session.xenapi.PIF.get_record(n)
> -            if rec.get('management', False):
> -                pool_mgmt_macs[rec.get('MAC')] = rec.get('device')
> +        recs = session.xenapi.PIF.get_all_records_where('field 
> "management"="true"')
> +        for rec in recs:
> +            pool_mgmt_macs[rec.get('MAC')] = rec.get('device')

Currently Open vSwitch supports XenServer back to version 5.6.100.  I
consulted the API reference for 5.6 here:
        
http://community.citrix.com/download/attachments/38633496/xenenterpriseapi.pdf?version=3
and did not see any documentation for get_all_records_where() on the
PIF class, only on the Message class.

This is also true in the documentation for XenServer 6.0, but it
worked fine for me on 6.0.

Are you sure that this will work with current and former XenServer
releases?  (Should you update the documentation?)

Thanks,

Ben.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to