@@ -145,12 +145,27 @@ size_t ArchiveWriter::store_tables() {
145145
146146 /* *
147147 * Packed stream metadata schema
148- * # num packed streams <64 bit>
149- * # [offset into file <64 bit> uncompressed size <64 bit>]+
150- * # num_separate_column_schemas (always 0 in current implementation)
151- * # [undefined]+ (will be defined once supported)
152- * # num schemas <64 bit>
153- * # [stream id <64 bit> offset into stream <64 bit> schema id <32 bit> num messages <64 bit>]+
148+ * This metadata schema organizes information about packed compression streams and associated
149+ * schema tables within a file. The schema is divided into two primary sections:
150+ * Section 1: Compression Streams Metadata
151+ * - Contains metadata about each compression stream.
152+ * - Structure:
153+ * - Number of packed streams: <64-bit integer>
154+ * - For each stream:
155+ * - Offset into the file: <64-bit integer>
156+ * - Uncompressed size: <64-bit integer>
157+ * - `num_separate_column_schemas` is always 0 in the current implementation.
158+ * - Undefined section for separate column schemas, reserved for future support.
159+ *
160+ * Section 2: Schema Tables Metadata
161+ * - Contains metadata about schema tables associated with each compression stream.
162+ * - Structure:
163+ * - Number of schema tables: <64-bit integer>
164+ * - For each schema table:
165+ * - Stream ID: <64-bit integer>
166+ * - Offset into the stream: <64-bit integer>
167+ * - Schema ID: <32-bit integer>
168+ * - Number of messages: <64-bit integer>
154169 *
155170 * Schema tables are packed into a series of compression streams. Each of those compression
156171 * streams is identified by a 64 bit stream id. In the first half of the metadata we identify
0 commit comments