On 06/12/2013 09:41 AM, Barak Azulay wrote:


----- Original Message -----
From: "Itamar Heim" <ih...@redhat.com>
To: "Liran Zelkha" <lzel...@redhat.com>
Cc: "engine-devel" <engine-devel@ovirt.org>
Sent: Tuesday, June 11, 2013 4:00:21 PM
Subject: Re: [Engine-devel] Updates in VdsUpdateRuntimeInfo

On 06/11/2013 03:26 PM, Liran Zelkha wrote:
Hi all,

I'm checking performance for VdsUpdateRunTimeInfo.
Naturally, much of the performance surrounds database activity
(getVmsRunningOnVds queries, updateDeviceRuntimeInfo, updateVmDynamic)

Few questions:
1. I have implemented batch updates for procedure UpdateVmDeviceRuntimeInfo
for improved performance.
2. Seems like the only parameters UpdateVmDeviceRuntimeInfo is getting are
vm_id,vm_device_id,address and alias. Are those rapidly changing, or will
it be beneficial to implement caching on those updates (to ensure
not-required updates do not travel to the database).

slowly changing, but how will you cover all flows changing these devices
to invalidate the cache (iiuc, this table is modified by engine when
adding devices to a VM as well?)


I don't think that in the device run time info we need to invalidate once we 
add a device.
This is a specific case where we actually get the information from the VDSM 
(addresses are received from libvirt)
The commands IIRC are first send to VDSM and than update the runtime info only 
on changed info (we can also hash it),
It may put the placeholder in the DB first but it still relies on the data 
received from VDSM.

if this table is only updated from vdsm to save it, i agree.
but isn't the engine also manipulating it?
wasn't there a request to be able to maybe edit the addresses some day?

_______________________________________________
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel

Reply via email to