[PATCH]Find a way to shrink or split OOS logs
|Reported by:||sanderd17||Owned by:|
Description (last modified by )
OOS logs are getting too big to work with.
Logs of long games (when there are a big number of units) can't be opened with all text editors anymore, and there's certainly a problem with certain diff tools (like meld).
Some things could be optimised:
TechnologyTemplateManager shouldn't serialise any data (it can always load the techs from disk when rejoining). r18100(-> backref OOS #4239) SerializeVector is very ineffecient; it stores the name of the array with every element, which results f.e. in a lot of lines like. r18121 TemplateManager stores the templates rather inefficiently. r18121 AIInterface serializes all templates, while it isn't needed at all. r18121 AIManager shouldn't serialiaze any data when there are no ais. r18121 AuraManager can clean up the applied auras while running (the deletion of objects was omitted in earlier versions because it was bad for performance, but this isn't an issue anymore when using Maps). r18123
- AIManager serializes the big pathfinder grid. This should be loaded in a Deserialized method (after deserialization of the pathfinder).
- ObstructionManager a lot of information on the entities that can be derived from other components (like the Position), or from the templates
TechnologyManager shouldn't save the autoresearch techs, they can perfectly be calculated on deserializaton (or otherwise, saving the names is enough)r20606
Next to optimising the OOS log, it could also be split. F.e. one log for the SYSTEM_ENTITY (which currently takes up 25% of the entire log), and then f.e. a log per 1000 or 2000 entities
Change History (27)
comment:5 by , 7 years ago
|Keywords:||patch review added|
|Milestone:||Backlog → Alpha 21|
|Summary:||Find a way to shrink or split OOS logs → [PATCH]Find a way to shrink or split OOS logs|