User:El~metawiki/History compression/Blob layout

From Meta, a Wikimedia project coordination wiki
 0.. 1:"SM"
 2.. 3: mVersion
 4.. 7: mNItems
 8..11: mNSections
12..15: mMetaDataLength
16..31: mDefaultHash

32+
 0..15: itemHash1
...

32+16*mNItems+
 0.. 3: itemOffset1
...

32+20*mNItems+
 0.. 3: nItemSectionNrs1
...

32+24*mNItems+
 0.. 3: sectionOffset1
...

32+24*mNItems+4*mNSections+
 0.. 3: sectionLength1
...

32+24*mNItems+8*mNSections+
 0.. mMetaDataLength-1: MetaData
...

itemOffset1+
 0.. 4: item1SectionNr1

...

sectionOffset1+
 0.. sectionLength1-1: section1

...

itemOffset1    = 32+24*mNItems+8*mNSections+metaDataLength
sectionOffset1 = 32+24*mNItems+8*mNSections+metaDataLength+itemSectionNrLength