On 14 April 2014 12:23, Julian Foad <julianf...@btopenworld.com> wrote: > Bert Huijben wrote: >>> Author: stefan2 >>> URL: http://svn.apache.org/r1586947 >>> Log: >>> Improve MT scalability of the FSFS DAG traversal code. > > It seems the main problem here is simply that this log message summary line > gives a false impression > about the magnitude of this particular change. > >>> Error objects are a very expensive way to control the control flow >>> as they carry their own pools, created from a thread-safe root pool. >>> >>> dag_open should not return an error to open_path if the dirent >>> cannot be found, pass a NULL node back instead. This eliminates >>> about 50% of all transitional error objects during log-y operations. > > I totally support this particular kind of change. It's simply good interface > design. > I completely agree with Julian: the change itself is good, but performance should not be justification for it. It makes design more clear and consistent with other function that have IGNORE_ENOENT argument.
-- Ivan Zhakov CTO | VisualSVN | http://www.visualsvn.com