On 14 April 2014 12:23, Julian Foad <julianfoad_at_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
Received on 2014-04-14 18:25:49 CEST