[PATCH] classicupgrade: tell tdb not to use fsync

Andrew Bartlett abartlet at samba.org
Thu Jul 11 17:32:10 MDT 2013

On Thu, 2013-07-11 at 13:06 +0200, Björn Jacke wrote:
> On 2013-07-11 at 08:47 +1000 Andrew Bartlett sent off:
> > On Wed, 2013-07-10 at 18:37 +0200, Björn Jacke wrote:
> > > this speeds up the classicupgrade process a lot and we don't really need
> > > syncing for data security here.
> > > 
> > > Signed-off-by:: Björn Jacke <bj at sernet.de>
> > 
> > I'm curious as to if this was seen before or after I added
> > 34820602715cc8936179091e188993f7a42808ac to the tree.  (Wrapping it in
> > one transaction should also help avoid the fsync(), but my patch may not
> > have actually done that).
> actually I didn't notice that change but I tested once more with master now: a
> mid-size domain classicupgrade with master takes here 50sec while it takes only
> 10sec with my change turning off tdb syncing.
> > Either way, I agree with the idea and think we should probably do the
> > same during provision and join as well. 
> but the actuall join and provision don't do as much hammering on the TDB files
> as the classicupgrade, I think. So the benefit here would be not very big, or?
> > I don't however think the patch is in the right spot - it should be in
> > the run() routine.  (I was going to suggest it being in
> > upgrade_from_samba3, but that is essentially a library routine and
> > changing the global environment there would be rude). 
> feel free to move it to some other place if you think another place is nicer
> :-)

The issue is that as I understand it the things outside run() are
executed during the parsing/display of the options, not during the
actual command.

Andrew Bartlett

Andrew Bartlett                                http://samba.org/~abartlet/
Authentication Developer, Samba Team           http://samba.org

More information about the samba-technical mailing list