MonashBI / arcana-legacy

Abstraction of Repository-Centric ANAlysis - a Python framework
Apache License 2.0
4 stars 3 forks source link

Improve performance of XNAT queries in study initialisation #89

Closed tclose closed 5 years ago

tclose commented 5 years ago

For large studies the time taken to query XNAT to build the repository tree using XnatPy data structures was proving very inconvenient. This PR refactors XnatRepository.find_data to use more direct REST calls (and lazily loading of checksums), which should hopefully improve performance significantly

codecov[bot] commented 5 years ago

Codecov Report

Merging #89 into master will decrease coverage by 0.12%. The diff coverage is 80.56%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master     #89      +/-   ##
=========================================
- Coverage   76.93%   76.8%   -0.13%     
=========================================
  Files          51      51              
  Lines        5774    5885     +111     
=========================================
+ Hits         4442    4520      +78     
- Misses       1332    1365      +33
Impacted Files Coverage Δ
arcana/environment/base.py 95.31% <ø> (ø) :arrow_up:
arcana/data/file_format/base.py 76.87% <ø> (ø) :arrow_up:
arcana/pkg_info.py 100% <100%> (ø) :arrow_up:
arcana/__init__.py 100% <100%> (ø) :arrow_up:
arcana/repository/base.py 98.11% <100%> (+1.95%) :arrow_up:
arcana/utils/testing/xnat.py 74.72% <100%> (+0.42%) :arrow_up:
arcana/study/multi.py 81.87% <100%> (ø) :arrow_up:
arcana/pipeline/base.py 83.58% <100%> (ø) :arrow_up:
arcana/exceptions.py 96.82% <100%> (+0.1%) :arrow_up:
arcana/processor/__init__.py 100% <100%> (ø) :arrow_up:
... and 13 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 5d92cef...f89ff81. Read the comment docs.