| 69 | } |
| 70 | |
| 71 | void DatabaseHeader::serialize(common::Serializer& ser) const { |
| 72 | writeMagicBytes(ser); |
| 73 | ser.writeDebuggingInfo("storage_version"); |
| 74 | ser.serializeValue(storageVersion); |
| 75 | ser.writeDebuggingInfo("catalog"); |
| 76 | ser.serializeValue(catalogPageRange.startPageIdx); |
| 77 | ser.serializeValue(catalogPageRange.numPages); |
| 78 | ser.writeDebuggingInfo("metadata"); |
| 79 | ser.serializeValue(metadataPageRange.startPageIdx); |
| 80 | ser.serializeValue(metadataPageRange.numPages); |
| 81 | ser.writeDebuggingInfo("databaseID"); |
| 82 | ser.serializeValue(databaseID.value); |
| 83 | // No debugging info so old readers can stop here; new readers read 9 bytes (version + size). |
| 84 | ser.serializeValue(static_cast<uint8_t>(HEADER_FORMAT_VERSION_WITH_DATAFILE_NUM_PAGES)); |
| 85 | ser.serializeValue(dataFileNumPages); |
| 86 | } |
| 87 | |
| 88 | DatabaseHeader DatabaseHeader::deserialize(common::Deserializer& deSer) { |
| 89 | validateMagicBytes(deSer); |
nothing calls this directly
no test coverage detected