memory usage and performance during schema modifications in samba4

Andrew Bartlett abartlet at
Sun Jul 4 15:52:33 MDT 2010

On Sun, 2010-07-04 at 16:53 +0300, Kamen Mazdrashki wrote:
> Hi Andrew,
> On Sun, Jul 4, 2010 at 16:16, Andrew Bartlett <abartlet at> wrote:
> >
> > Do you have any idea where the ldb_msg objects are coming from?
> >
> It seems most of those object are coming from lib/ldb/common/ldb_msg.c
> implementation.
> There are few functions that that take only 'struct ldb_context*' and
> 'stuct ldb_msg *' params,
> which functions makes copies of ldb_msg internally or as a function result.
> We should refactor those function IMO, so that all of them to take a
> TALLOC_CTX to make
> copies in. This way callers will be able to decide how exactly they
> want memory to be handled
> (and thus what the lifetime of memory to be)
> I was planning to take over this task and propose a patch to solve the issue.
> One thing I am afraid though is that ldb.h interface should be changed
> as prototype
> for ldb_msg_canonicalize and ldb_msg_diff may should be changed to
> accept TALLOC_CTX.

This is the fundamental problem - a while back ldb_search() was fixed up
to resolve this issue, but the rest of the API was not changed, and now
ldb's API is published (Simo in particular has projects like Fedora's
sssd based on it). 

I don't think this should stop us however (the problem is too serious),
as we may need to simply come up with new names for the changed APIs.  

Andrew Bartlett

Andrew Bartlett                      
Authentication Developer, Samba Team 
Samba Developer, Cisco Inc.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part
URL: <>

More information about the samba-technical mailing list