On Mon, Aug 19, 2013 at 08:14:03AM -0400, Simo Sorce wrote:
On Mon, 2013-08-19 at 11:33 +0200, Sumit Bose wrote:
> On Sun, Aug 18, 2013 at 10:26:46PM +0200, Jakub Hrozek wrote:
> > There seems to be a logic bug in sysdb_master_domain_add_info(). We
> > first update the domain data with sysdb search results and then update
> > sysdb. I think it should be the other way around.
>
> iirc the idea was to read the sysdb entry first to make sure we have the
> latest data from sysdb. Because of the asynchronous nature of the
> request it might be possible that another request already updated the
> sysdb entry. To avoid unneeded writes we try to compare the new data
> with the latest data we know. This is led by the assumption that
> reading from sysdb is a lot cheaper then writing to it.
How often does this operation happen ?
Simo.
Never until now because it didn't work :-) But if there's a cheap way to
optimize, then why not. I think the code should just make it clear
what's happening.
Attached is a new patch that explains why we call the domain update also
before the sysdb update and adds another domain update after the sysdb
update to make sure the sss_domain_info structure has the latest data.