Skip to content

Conversation

@vkresch
Copy link
Contributor

@vkresch vkresch commented Nov 26, 2019

Reference to a related issue in the repository

There is an issue on how to define files which can be read by the visualizer.

Add a description

This PR defines the OSI format for storing multiple messages in one file based on the length of the message. It also provides a script to convert from currently used separated trace files by $$__$$ to to the OSI format. This is made so we avoid confusion on how to correctly define OSI file formats and to use Google official suggestion on how storage of multiple messages should be handled. It is optional to convert into lzma compressed files since this compression algorithm does a good job on compressing ~1.3gb *.txt into 2,4mb *.txt.lzma (540x smaller, compression time 2min, decompression time 0.5s).

I also provide a osi2read.py script which converts serialized trace files to human readable files for plausibliity checks of the trace files. It should be avoided for now to use it on to huge trace files since the readable files could not be opened anyway :).

For tests the osi-validator can be used that can now validate both type of formats but warns the user that the old format will be deprecated in the near future.

Mention a member

@jdsika @pmai let me know your thoughts, suggestions and improvements ;)

Check the checklist

  • My code and comments follow the style guidelines and contributors guidelines of this project.
  • I have performed a self-review of my own code.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have added tests that prove my fix is effective or that my feature works.
  • New and existing unit tests / travis ci pass locally with my changes.

@jdsika jdsika modified the milestones: v3.2.0, v3.1.3 Nov 26, 2019
@jdsika jdsika added the Quality Quality improvements. label Nov 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Quality Quality improvements.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants