-
Notifications
You must be signed in to change notification settings - Fork 131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
receiver optimisation: possible to further short-circuit early recursion stop check? #3571
Comments
I think that's a good idea! If I'm not mistaken, |
Does #3577 do the job? |
perhaps the check can even move outside of that clause, to line 185? |
I think it does the job. Yes, it should be fine to move it up. And it is sufficient to check for We can also, I think, make a similar optimization for the |
I agree, the changes would essentially replace the check at the start of the function as an even early recursion stop. Provided it's implemented correctly (i.e. as you mentioned do it for |
Consider the directory structure:
with a nested catalog at each directory; and a transaction that adds
TOP/L1/4
with a lease path ofTOP/L1/4
.DiffRec
will make the early recursion stop checkcvmfs/cvmfs/catalog_diff_tool_impl.h
Lines 186 to 196 in 47a223e
for all directories
1,2,3
. This is a relatively slow operation, and can be a bottleneck whenL1
has very many nested catalogs.Would it be possible to further short-circuit this check based on whether the path being considered is in the lease path (IsReportablePath()==true?)
The text was updated successfully, but these errors were encountered: