1syntax = "proto2"; 2 3package protobuf; 4 5enum CompressionType { 6 // Values should match with the corresponding struct in cstore_fdw.h 7 NONE = 0; 8 PG_LZ = 1; 9}; 10 11message ColumnBlockSkipNode { 12 optional uint64 rowCount = 1; 13 optional bytes minimumValue = 2; 14 optional bytes maximumValue = 3; 15 optional uint64 valueBlockOffset = 4; 16 optional uint64 valueLength = 5; 17 optional CompressionType valueCompressionType = 6; 18 optional uint64 existsBlockOffset = 7; 19 optional uint64 existsLength = 8; 20} 21 22message ColumnBlockSkipList { 23 repeated ColumnBlockSkipNode blockSkipNodeArray = 1; 24} 25 26message StripeFooter { 27 repeated uint64 skipListSizeArray = 1; 28 repeated uint64 existsSizeArray = 2; 29 repeated uint64 valueSizeArray = 3; 30} 31 32message StripeMetadata { 33 optional uint64 fileOffset = 1; 34 optional uint64 skipListLength = 2; 35 optional uint64 dataLength = 3; 36 optional uint64 footerLength = 4; 37} 38 39message TableFooter { 40 repeated StripeMetadata stripeMetadataArray = 1; 41 optional uint32 blockRowCount = 2; 42} 43 44message PostScript { 45 optional uint64 tableFooterLength = 1; 46 optional uint64 versionMajor = 2; 47 optional uint64 versionMinor = 3; 48 49 // Leave this last in the record 50 optional string magicNumber = 8000; 51} 52