Improve import performance
- Add fast path for CAS-to-CAS subdirectory import without filter
- Use variable-length argument list for Directory.descend()
- Reduce number of os.path.join() calls
- Use
CasBasedDirectoryas sandbox root for import and filter elements
With this branch I see a 40% reduction in staging time for CAS-based sandbox (BuildBox, remote execution). I also see a 30-40% reduction in execution time for the BuildStream test suite due to the import element optimization.
Edited by Jürg Billeter