cybernoid / archivemount

A fuse filesystem for mounting archives in formats supported by libarchive.
Other
192 stars 20 forks source link

Don't unpack whole file on access #15

Closed JuniorJPDJ closed 4 years ago

JuniorJPDJ commented 4 years ago

I've little problem. I'm mounting loads of remote zips, big part of them have NO COMPRESSION. archivemount still first loads whole file on open, then provides amount of data read() asked for. That's big problem, software I'm using tries to open all files inside mounted zips and load just a bunch of kBs from N-MB files. What if archivemount could decompress just as much data as read() ask for, only unpack whole on seek() or even don't unpack whole if possible (eg. if no compression is applied in archive - like tar or zip stored file)?

cybernoid commented 4 years ago

Hi, archivemount is in passive maintenance mode. If you find a way to fix that problem send patches, I'll happily integrate them.

I fear reading the whole zip file and building up the tree in memory is the central concept around which a archivemount is built, so changing this would require a major rewrite.

JuniorJPDJ commented 4 years ago

I mean reading whole meta inside zip is ok for me, I'm talking about data inside.

cybernoid commented 4 years ago

Archivemount does not process the zip file itselves, the whole work is done by libarchive.