View Issue Details

IDProjectCategoryView StatusLast Update
0001941Spring engineGeneralpublic2010-06-12 12:42
Reportertvo Assigned Totvo  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version0.81.2+git 
Target Version0.82.0Fixed in Version0.81.2.1 
Summary0001941: starting usync/spring slow when old unrecognized archives are present
DescriptionStarting unitsync or spring is slow when old unrecognized archives are present, because it opens each archive every time to see if this time it has a modinfo.lua available. With lots of now-unsupported content this can make unitsync and spring start significantly slower. Will probably be reported as a bug after release if I don't report it now ;-)

Additional InformationA potential solution could be to maintain a list of disabled archives in ArchiveScanner.lua, including timestamp, so they can be quickly skipped after one stat() call.

Alternatively Spring/unitsync could attempt to move them to a new folder, e.g. broken_maps / broken_mods / broken_packages. (But should still remember they are broken in some other way too in case the move fails.)
TagsNo tags attached.
Checked infolog.txt for Errors

Activities

hoijui

2010-06-08 15:32

reporter   ~0004957

comparison of the two
---------------------

mark as outdated in ArchiveCacheV*.lua:
- less obvious to the user (outdated stuff only visible in infolog.txt)

move to different folder:
- write permission problem
- possible out-of-disc-space (eg. on windows, moving maps from read-only to writable data-dir on other partition)
- invalid with our logic (changeing read-only data-dir)
- archives will be unavailable for odler spring versions too (where they still would work)

i may have forgotten some things, but i am pro the marking in ArchiveCache, as it looks to me now.

tvo

2010-06-08 15:46

reporter   ~0004960

Last edited: 2010-06-08 15:46

> - write permission problem
> - possible out-of-disc-space (eg. on windows, moving maps from read-only to writable data-dir on other partition)

That should be covered by also marking in infolog. (Or rather, marking in infolog if move fails.)

> - invalid with our logic (changeing read-only data-dir)

I would suggest it only changes the writable data dir. I assume in the most common setup 95% of the content is in the writable data dir.

> - archives will be unavailable for odler spring versions too (where they still would work)

Good point. I guess that makes only marking in ArchiveCache the best solution.

hoijui

2010-06-08 16:22

reporter   ~0004961

kind of irrelevant now, but still (have nothing better to do ;-) ):
under windows, the ArchiveMover puts stuff under .../My Documents/My Games/Spring/, which is a read-only data-dir. If i remember right, that is what all downloaders use, and what is used when double-clicking on an archive, and when downloading through a browser ("Open with default application"). So at least for new users and maps/mods, it will usually be in a read-only dir.

tvo

2010-06-12 12:42

reporter   ~0004975

fixed in http://github.com/spring/spring/commit/c1462710375afdd31f097a229f30cd343246e4ad

Issue History

Date Modified Username Field Change
2010-06-08 10:34 tvo New Issue
2010-06-08 10:35 tvo Target Version => 0.82
2010-06-08 15:32 hoijui Note Added: 0004957
2010-06-08 15:46 tvo Note Added: 0004960
2010-06-08 15:46 tvo Note Edited: 0004960
2010-06-08 16:22 hoijui Note Added: 0004961
2010-06-12 12:42 tvo Note Added: 0004975
2010-06-12 12:42 tvo Status new => resolved
2010-06-12 12:42 tvo Fixed in Version => 0.81.2.1
2010-06-12 12:42 tvo Resolution open => fixed
2010-06-12 12:42 tvo Assigned To => tvo