Open zhubonan opened 2 years ago
Merging #138 (bc62f1e) into develop (16e6ff9) will decrease coverage by
2.44%
. The diff coverage is86.72%
.:exclamation: Current head bc62f1e differs from pull request most recent head c7af5af. Consider uploading reports for the commit c7af5af to get more accurate results
@@ Coverage Diff @@
## develop #138 +/- ##
===========================================
- Coverage 99.52% 97.07% -2.45%
===========================================
Files 8 8
Lines 1676 1881 +205
===========================================
+ Hits 1668 1826 +158
- Misses 8 55 +47
Impacted Files | Coverage Δ | |
---|---|---|
disk_objectstore/cli.py | 83.96% <56.75%> (-14.59%) |
:arrow_down: |
disk_objectstore/utils.py | 96.51% <91.66%> (-3.09%) |
:arrow_down: |
disk_objectstore/container.py | 97.95% <92.76%> (-1.45%) |
:arrow_down: |
disk_objectstore/database.py | 100.00% <100.00%> (ø) |
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 16e6ff9...c7af5af. Read the comment docs.
Hi @chrisjsewell @giovannipizzi, could you please take a look of this?
Some prblems still to be solved:
alembic
?
Replaces #133
Archived pack files are essentially ZIP archives. Reading from these files are also supported from offset/length as stored in the sqlite database. Because archived packs will never be used for reading, they can be stored at different file systems and networked locations. The use of ZIP archives also allows recovering data in case of the sqlite database being damaged.
The main difference between an archived pack and a normal pack is that:
Creating an archive is a slow process, and should be carried out while the container is not activet (e.g. similar to repack). However, I think it is should still be possible to carry out as long as the pack file being archived not being written into at the same time.
A new table is needed in the sqlite database to store the status of the pack file, with two extra columns:
state
andlocation
. The former would be changed toArchived
if the pack is archived. The latter stores any explicit location of the archived pack file.A cli interface is provided to list archive files and update their locations.