1 /** \page formatpage Solv file format
3 Metadata information is stored as '.solv' files
5 These files have the following format:
7 \section formatv0 V0 format
15 U32: NUMID /* number of Ids (names) */
16 U32: NUMREL /* number of RelDeps (dependencies) */
17 U32: NUMSOLV /* number of Solvables (packages) */
20 U32: SIZEID /* total size of string buffer */
21 U8*: DICT (SIZE SIZEID) /* (raw) string buffer */
24 U8*: RELDICT /* Buffer for RandDeps (Id,Id,u8) */
26 -- source data -- /* apparently unused */
29 U8 : TYPE /* TYPE_ID, TYPE_U32, TYPE_STR */
50 U32: NUMID /* number of Ids (names) */
51 U32: NUMREL /* number of RelDeps (dependencies) */
52 U32: NUMDIR /* number of directories */
53 U32: NUMITEM /* number of items (packages) */
55 U32: NUMSCHEMATA /* number of schemata */
57 U32: FLAGS /* solv file flags */
61 ID: SIZEID /* total size of string buffer */
62 U8*: DICT (SIZE SIZEID) /* (raw) string buffer */
65 U8*: RELDICT /* Buffer for RandDeps (Id,Id,u8) */
68 U8*: DIRDICT /* Buffer for dirs (Id,Id) */
77 ID: expanded schemata size
81 -- file information --
82 ID maxinfolen (IF NUMINFO)
83 ID allinfolen (IF NUMINFO)
89 ID maxitemlen (IF NUMITEM)
90 ID allitemlen (IF NUMITEM)
95 -- paged vertical data --
98 U32 len * 2 + compressedflag
103 key sizes for storage types:
106 KEY_STORAGE_VERTICAL_OFFSET: packed size
107 KEY_STORAGE_INCORE: packed size
108 KEY_STORAGE_SOLVABLE: unpacked size