From 590e4a7314c7cfd195ce21fbb94aed9d9d60db2f Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Thu, 7 Apr 2016 01:08:09 +0000 Subject: [PATCH 1/8] cleanup magic quotes and clarify/fix some minor points --- format/Layout.md | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index 1b532c6b3817c..22fb1e2ef3619 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -9,7 +9,7 @@ concepts, here is a small glossary to help disambiguate. * Slot or array slot: a single logical value in an array of some particular data type * Contiguous memory region: a sequential virtual address space with a given length. Any byte can be reached via a single pointer offset less than the - region’s length. + regions length. * Primitive type: a data type that occupies a fixed-size memory slot specified in bit width or byte width * Nested or parametric type: a data type whose full structure depends on one or @@ -42,7 +42,7 @@ Base requirements * Capable of representing fully-materialized and decoded / decompressed Parquet data * All leaf nodes (primitive value arrays) use contiguous memory regions -* Any relative type can be have null slots +* Any relative type can have null slots * Arrays are immutable once created. Implementations can provide APIs to mutate an array, but applying mutations will require a new array data structure to be built. @@ -69,7 +69,7 @@ Base requirements * To define a selection or masking vector construct * Implementation-specific details * Details of a user or developer C/C++/Java API. -* Any “table” structure composed of named arrays each having their own type or +* Any "table" structure composed of named arrays each having their own type or any other structure that composes arrays. * Any memory management or reference counting subsystem * To enumerate or specify types of encodings or compression support @@ -175,18 +175,18 @@ slot_length = offsets[j + 1] - offsets[j] // (for 0 <= j < length) The first value in the offsets array is 0, and the last element is the length of the values array. -Let’s consider an example, the type `List`, where Char is a 1-byte +Let's consider an example, the type `List`, where Char is a 1-byte logical type. For an array of length 3 with respective values: -[[‘j’, ‘o’, ‘e’], null, [‘m’, ‘a’, ‘r’, ‘k’]] +[['j', 'o', 'e'], null, ['m', 'a', 'r', 'k']] We have the following offsets and values arrays -Let’s consider an array of a nested type, `List>` +Let's consider an array of a nested type, `List>` @@ -248,8 +248,8 @@ Alternate proposal (TBD): the types and offset values may be packed into an int48 with 2 bytes for the type and 4 bytes for the offset. Critically, the dense union allows for minimal overhead in the ubiquitous -union-of-structs with non-overlapping-fields use case (Union) +union-of-structs with non-overlapping-fields use case (`Union`) Here is a diagram of an example dense union: @@ -266,15 +266,18 @@ union, it has some advantages that may be desirable in certain use cases: -More amenable to vectorized expression evaluation in some use cases. -Equal-length arrays can be interpreted as a union by only defining the types array +* A sparse union is more amenable to vectorized expression evaluation in some use cases. +* Equal-length arrays can be interpreted as a union by only defining the types array. Note that nested types in a sparse union must be internally consistent (e.g. see the List in the diagram), i.e. random access at any index j yields the correct value. +In other words, the array for the nested type must be valid if it is +reinterpreted as a non-nested array. + ## References Drill docs https://drill.apache.org/docs/value-vectors/ -[1]: https://en.wikipedia.org/wiki/Bit_numbering \ No newline at end of file +[1]: https://en.wikipedia.org/wiki/Bit_numbering From 0f23052dbcb118feb6c57efaf773324624549fd3 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Thu, 7 Apr 2016 04:59:35 +0000 Subject: [PATCH 2/8] replace diagrams with physical layouts, clarify memory requirements for struct --- format/Layout.md | 194 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 181 insertions(+), 13 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index 22fb1e2ef3619..bd3023bb111db 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -9,7 +9,7 @@ concepts, here is a small glossary to help disambiguate. * Slot or array slot: a single logical value in an array of some particular data type * Contiguous memory region: a sequential virtual address space with a given length. Any byte can be reached via a single pointer offset less than the - regions length. + region's length. * Primitive type: a data type that occupies a fixed-size memory slot specified in bit width or byte width * Nested or parametric type: a data type whose full structure depends on one or @@ -74,6 +74,10 @@ Base requirements * Any memory management or reference counting subsystem * To enumerate or specify types of encodings or compression support +## Byte Order (Endianess) + +The Arrow format is little endian. + ## Array lengths Any array has a known and fixed length, stored as a 32-bit signed integer, so a @@ -142,10 +146,61 @@ the size is rounded up to the nearest byte. The associated null bitmap is contiguously allocated (as described above) but does not need to be adjacent in memory to the values buffer. -(diagram not to scale) - +### Example Layout: Int32 Array +For example a primitive array of int32s: + +[1, 2, null, 4, 8] + +Would look like: + +``` +* Length: 5, Null count: 1 +* Null bitmap buffer: + + |Byte 0 (validity bitmap) | Bytes 1-7 | + |-------------------------|-----------------------| + |00011011 | 0 (padding) | + +* Value Buffer: + + |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | + |------------|-------------|-------------|-------------|-------------| + | 1 | 2 | unspecified | 4 | 8 | + +``` + +### Example Layout: Non-null int32 Array + +[1, 2, 3, 4, 8] has two possible layouts: + +``` +* Length: 5, Null count: 0 +* Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 1-7 (padding) | + |--------------------------|-----------------------| + | 00011111 | 0 (padding) | + +* Value Buffer: + + |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | bytes 12-15 | bytes 16-19 | + |------------|-------------|-------------|-------------|-------------| + | 1 | 2 | 3 | 4 | 8 | +``` + +or with the bitmap elided: + +``` +* Length 5, Null count: 0 +* Null bitmap buffer: Not required +* Value Buffer: + + |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | bytes 12-15 | bytes 16-19 | + |------------|-------------|-------------|-------------|-------------| + | 1 | 2 | 3 | 4 | 8 | +``` ## List type List is a nested type in which each array slot contains a variable-size @@ -175,20 +230,84 @@ slot_length = offsets[j + 1] - offsets[j] // (for 0 <= j < length) The first value in the offsets array is 0, and the last element is the length of the values array. +### Example Layout: `List` Array Let's consider an example, the type `List`, where Char is a 1-byte logical type. -For an array of length 3 with respective values: +For an array of length 4 with respective values: -[['j', 'o', 'e'], null, ['m', 'a', 'r', 'k']] +[['j', 'o', 'e'], null, ['m', 'a', 'r', 'k'], []] -We have the following offsets and values arrays +will have the following representation: - +``` +* Length: 4, Null count: 1 +* Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 0-7 | + |--------------------------|-----------------------| + | 00001101 | 0 (padding) | + +* Offsets array (int32 array) + * Length: 5, Null count: 0 + * Null bitmap buffer: Not required + * Value Buffer (offsets into the Values array): + + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | + |------------|-------------|-------------|-------------|-------------| + | 0 | 3 | 3 | 7 | 7 | + +* Values array (char array): + * Length: 7, Null count: 0 + * Null bitmap buffer: Not required + + | Bytes 0-7 | + |------------| + | joemark | +``` + +### Example Layout: `List>` +[[[1, 2], [3, 4]], [[5, 6, 7], null, [8]], [[9, 10]]] -Let's consider an array of a nested type, `List>` +will be be represented as follows: - +``` +* Length 3 +* Nulls count: 0 +* Null bitmap buffer: Not required +* Offsets array (int32 array) + * Length: 4, Null count: 0 + * Null bitmap buffer: Not required + * Value Buffer (offsets into the Values array): + + | Bytes 0-3 | Bytes 3-6 | Bytes 7-10 | Bytes 10-13 | + |------------|------------|------------|-------------| + | 0 | 2 | 6 | 7 | + +* Values array (`List`) + * Length: 6, Null count: 1 + * Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 1-7 | + |--------------------------|-------------| + | 00110111 | 0 (padding) | + + * Offsets array (int32 array) + * Length 7, Null count: 0 + * Null bitmap buffer: Not required + + | Bytes 0-28 | + |----------------------| + | 0, 2, 4, 7, 7, 8, 10 | + + * Values array (bytes): + * Length: 10, Null count: 0 + * Null bitmap buffer: Not required + + | Bytes 0-9 | + |-------------------------------| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 | +``` ## Struct type @@ -198,7 +317,8 @@ types (which can all be distinct), called its fields. Typically the fields have names, but the names and their types are part of the type metadata, not the physical memory layout. -A struct does not have any additional allocated physical storage. +A struct array does not have any additional allocated physical storage for its values. +A struct array must still have an allocated null bitmap, if it has one or more null values. Physically, a struct type has one child array for each field. @@ -213,15 +333,63 @@ Struct < ``` has two child arrays, one List array (layout as above) and one 4-byte -physical value array having Int32 logical type. Here is a diagram showing the -full physical layout of this struct: +primitive value array having Int32 logical type. + +### Example Layout: `Struct, Int32>`: +The layout for [{'joe', 1}, {null, 2}, null, {'mark', 4}] would be: + +``` +* Length: 4, Null count: 1 +* Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 1-7 | + |--------------------------|-------------| + | 00001011 | 0 (padding) | + +* Children arrays: + * field-0 array (`List`): + * Length: 4, Null count: 1 + * Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 1-7 | + |--------------------------|-----------------------| + | 00011101 | 0 (padding) | + + * Offsets array: + * Length: 5, Null count: 0 + * Null bitmap buffer: Not required + + | byte 0-19 | + |----------------| + | 0, 3, 3, 6, 10 | - + * Values array: + * Length: 10, Null count: 0 + * Null bitmap buffer: Not required + + * Value buffer: + + | byte 0-9 | + |----------------| + | joebobmark | + + * field-1 array (int32 array): + * Length: 4, Null count: 0 + * Null bitmap buffer: Not required + * Value Buffer: + + | byte 0-15 | + |----------------| + | 1, 2, 3, 4 | + +``` While a struct does not have physical storage for each of its semantic slots (i.e. each scalar C-like struct), an entire struct slot can be set to null via the null bitmap. Any of the child field arrays can have null values according to their respective independent null bitmaps. +In the example above, the child arrays have a valid entries for the null struct +but are 'hidden' from the consumer by the parent array's null bitmap. ## Dense union type From 7dda5d533e3533bfdc10dd2bf33f9e92685d55c9 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Sun, 10 Apr 2016 04:36:18 +0000 Subject: [PATCH 3/8] clarify requirements of child types, finish replacing diagrams, fix some typos --- format/Layout.md | 156 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 139 insertions(+), 17 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index bd3023bb111db..20b003349224b 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -74,7 +74,7 @@ Base requirements * Any memory management or reference counting subsystem * To enumerate or specify types of encodings or compression support -## Byte Order (Endianess) +## Byte Order (Endianness) The Arrow format is little endian. @@ -167,7 +167,6 @@ Would look like: |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | |------------|-------------|-------------|-------------|-------------| | 1 | 2 | unspecified | 4 | 8 | - ``` ### Example Layout: Non-null int32 Array @@ -199,8 +198,8 @@ or with the bitmap elided: |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | bytes 12-15 | bytes 16-19 | |------------|-------------|-------------|-------------|-------------| | 1 | 2 | 3 | 4 | 8 | - ``` + ## List type List is a nested type in which each array slot contains a variable-size @@ -280,7 +279,7 @@ will be be represented as follows: * Null bitmap buffer: Not required * Value Buffer (offsets into the Values array): - | Bytes 0-3 | Bytes 3-6 | Bytes 7-10 | Bytes 10-13 | + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | |------------|------------|------------|-------------| | 0 | 2 | 6 | 7 | @@ -388,8 +387,14 @@ While a struct does not have physical storage for each of its semantic slots (i.e. each scalar C-like struct), an entire struct slot can be set to null via the null bitmap. Any of the child field arrays can have null values according to their respective independent null bitmaps. -In the example above, the child arrays have a valid entries for the null struct -but are 'hidden' from the consumer by the parent array's null bitmap. +This implies that for a particular struct slot the null bitmap for the struct +array might indicate a null slot when one or more of its child arrays has a +non-null value in their corresponding slot. When reading the struct array the +parent null bitmap is authoritative. +This is illustrated in the example above, the child arrays have valid entries +for the null struct but are 'hidden' from the consumer by the parent array's +null bitmap. However, when treated independently corresponding +values of the children array will be non-null. ## Dense union type @@ -405,23 +410,65 @@ cases. This first, the dense union, represents a mixed-type array with 6 bytes of overhead for each value. Its physical layout is as follows: * One child array for each relative type -* Types array: An array of unsigned integers, enumerated from 0 corresponding +* Types buffer: A buffer of unsigned integers, enumerated from 0 corresponding to each type, with the smallest byte width capable of representing the number of types in the union. -* Offsets array: An array of signed int32 values indicating the relative offset +* Offsets buffer: A buffer of signed int32 values indicating the relative offset into the respective child array for the type in a given slot. The respective offsets for each child value array must be in order / increasing. -Alternate proposal (TBD): the types and offset values may be packed into an -int48 with 2 bytes for the type and 4 bytes for the offset. - Critically, the dense union allows for minimal overhead in the ubiquitous union-of-structs with non-overlapping-fields use case (`Union`) -Here is a diagram of an example dense union: +### Example Layout: Dense union + +An example layout for logical union of: +`Union` having the values: +[{f=1.2}, null, {f=3.4}, {i=5}] + +``` +* Length: 4, Null count: 1 +* Null bitmap buffer: + |Byte 0 (validity bitmap) | Bytes 1-7 | + |-------------------------|-----------------------| + |00001101 | 0 (padding) | + +* Types buffer: + + |Byte 0-1 | Byte 2-3 | Byte 4-5 | Byte 6-7 | + |---------|-------------|----------|----------| + | 0 | unspecified | 0 | 1 | + + +* Offset buffer: - + |Byte 0-3 | Byte 4-7 | Byte 8-11 | Byte 12-15 | + |---------|-------------|-----------|------------| + | 0 | unspecified | 1 | 0 | + +* Children arrays: + * Field-0 array (f: float): + * Length: 2, nulls: 0 + * Null bitmap buffer: Not required + + * Value Buffer: + + | Bytes 0-7 | + |-----------| + | 1.2, 3.4 | + + + * Field-1 array (f: float): + * Length: 1, nulls: 0 + * Null bitmap buffer: Not required + + * Value Buffer: + + | Bytes 0-3 | + |-----------| + | 5 | +``` ## Sparse union type @@ -432,17 +479,92 @@ the length of the union. While a sparse union may use significantly more space compared with a dense union, it has some advantages that may be desirable in certain use cases: - - * A sparse union is more amenable to vectorized expression evaluation in some use cases. * Equal-length arrays can be interpreted as a union by only defining the types array. +### Example layout: `SparseUnion>` + +For the union array: + +[{u0=5}, {u1=1.2}, {u2='joe'}, {u1=3.4}, {u0=4}, 'mark'] + +will have the following layout: +``` +* Length: 6, Null count: 0 +* Null bitmap buffer: Not required + +* Types buffer: + + | Bytes 0-1 | Bytes 2-3 | Bytes 4-5 | Bytes 6-7 | Bytes 8-9 | Bytes 11-12 | + |------------|-------------|-------------|-------------|-------------|--------------| + | 0 | 1 | 2 | 1 | 0 | 2 | + +* Children arrays: + + * u0 (Int32): + * Length: 6, Null count: 4 + * Null bitmap buffer: + + |Byte 0 (validity bitmap) | Bytes 1-7 | + |-------------------------|-----------------------| + |00010001 | 0 (padding) | + + * Value buffer: + + |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | + |------------|-------------|-------------|-------------|-------------|--------------| + | 1 | unspecified | unspecified | unspecified | 4 | unspecified | + + * u1 (float): + * Length: 6, Null count: 4 + * Null bitmap buffer: + + |Byte 0 (validity bitmap) | Bytes 1-7 | + |-------------------------|-----------------------| + |00001010 | 0 (padding) | + + * Value buffer: + + |Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | + |-------------|-------------|-------------|-------------|-------------|--------------| + | unspecified | 1.2 | unspecified | 3.4 | unspecified | unspecified | + + * u2 (`List`) + * Length: 6, Null count: 4 + * Null bitmap buffer: + + | Byte 0 (validity bitmap) | Bytes 0-7 | + |--------------------------|-----------------------| + | 00100100 | 0 (padding) | + + * Offsets array (int32 array) + * Length: 7, Null count: 0 + * Null bitmap buffer: Not required + * Value Buffer (offsets into the Values array): + + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | Bytes 24-27 | + |------------|-------------|-------------|-------------|-------------|-------------|-------------| + | 0 | 0 | 0 | 3 | 3 | 3 | 7 | + + * Values array (char array): + * Length: 7, Null count: 0 + * Null bitmap buffer: Not required + + | Bytes 0-7 | + |------------| + | joemark | +``` + Note that nested types in a sparse union must be internally consistent -(e.g. see the List in the diagram), i.e. random access at any index j yields -the correct value. +(e.g. see the List in the diagram), i.e. random access at any index j +on any child array will not cause an error. In other words, the array for the nested type must be valid if it is reinterpreted as a non-nested array. +Similar to structs, a particular child array may have a non-null slot +even if the null bitmap of the parent union array indicates the slot is +null. Additionally, a child array may have a non-null slot even if +the the types array indicates that a slot contains a different type at the index. ## References From b7aa7eae302058eae81e9d51e9953460521b77b8 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Sun, 10 Apr 2016 04:46:14 +0000 Subject: [PATCH 4/8] change list offset array to offset buffer --- format/Layout.md | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index 20b003349224b..d7f1505061155 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -212,7 +212,7 @@ A list type is specified like `List`, where `T` is any relative type A list-array is represented by the combination of the following: * A values array, a child array of type T. T may also be a nested type. -* An offsets array containing 32-bit signed integers with length equal to the +* An offsets buffer containing 32-bit signed integers with length equal to the length of the top-level array plus one. Note that this limits the size of the values array to 2^31 -1. @@ -247,10 +247,7 @@ will have the following representation: |--------------------------|-----------------------| | 00001101 | 0 (padding) | -* Offsets array (int32 array) - * Length: 5, Null count: 0 - * Null bitmap buffer: Not required - * Value Buffer (offsets into the Values array): +* Offsets buffer (int32) | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | |------------|-------------|-------------|-------------|-------------| @@ -274,10 +271,7 @@ will be be represented as follows: * Length 3 * Nulls count: 0 * Null bitmap buffer: Not required -* Offsets array (int32 array) - * Length: 4, Null count: 0 - * Null bitmap buffer: Not required - * Value Buffer (offsets into the Values array): +* Offsets buffer (int32) | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | |------------|------------|------------|-------------| @@ -291,9 +285,7 @@ will be be represented as follows: |--------------------------|-------------| | 00110111 | 0 (padding) | - * Offsets array (int32 array) - * Length 7, Null count: 0 - * Null bitmap buffer: Not required + * Offsets buffer (int32) | Bytes 0-28 | |----------------------| @@ -440,7 +432,6 @@ An example layout for logical union of: |---------|-------------|----------|----------| | 0 | unspecified | 0 | 1 | - * Offset buffer: |Byte 0-3 | Byte 4-7 | Byte 8-11 | Byte 12-15 | @@ -537,10 +528,7 @@ will have the following layout: |--------------------------|-----------------------| | 00100100 | 0 (padding) | - * Offsets array (int32 array) - * Length: 7, Null count: 0 - * Null bitmap buffer: Not required - * Value Buffer (offsets into the Values array): + * Offsets buffer (int32) | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | Bytes 24-27 | |------------|-------------|-------------|-------------|-------------|-------------|-------------| From 69e1a78aa504f3fc24bae5afb86791e3e66607a9 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Sun, 10 Apr 2016 05:15:20 +0000 Subject: [PATCH 5/8] fix some alignment, and one last offset array to buffer conversion --- format/Layout.md | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index d7f1505061155..3e2026f588785 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -249,9 +249,9 @@ will have the following representation: * Offsets buffer (int32) - | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | - |------------|-------------|-------------|-------------|-------------| - | 0 | 3 | 3 | 7 | 7 | + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | + |------------|-------------|-------------|-------------|-------------| + | 0 | 3 | 3 | 7 | 7 | * Values array (char array): * Length: 7, Null count: 0 @@ -273,9 +273,9 @@ will be be represented as follows: * Null bitmap buffer: Not required * Offsets buffer (int32) - | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | - |------------|------------|------------|-------------| - | 0 | 2 | 6 | 7 | + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | + |------------|------------|------------|-------------| + | 0 | 2 | 6 | 7 | * Values array (`List`) * Length: 6, Null count: 1 @@ -287,9 +287,9 @@ will be be represented as follows: * Offsets buffer (int32) - | Bytes 0-28 | - |----------------------| - | 0, 2, 4, 7, 7, 8, 10 | + | Bytes 0-28 | + |----------------------| + | 0, 2, 4, 7, 7, 8, 10 | * Values array (bytes): * Length: 10, Null count: 0 @@ -346,13 +346,11 @@ The layout for [{'joe', 1}, {null, 2}, null, {'mark', 4}] would be: |--------------------------|-----------------------| | 00011101 | 0 (padding) | - * Offsets array: - * Length: 5, Null count: 0 - * Null bitmap buffer: Not required + * Offsets buffer: - | byte 0-19 | - |----------------| - | 0, 3, 3, 6, 10 | + | byte 0-19 | + |----------------| + | 0, 3, 3, 6, 10 | * Values array: * Length: 10, Null count: 0 From 5550a78bc4c7b31b68467b7886348a7288bfbf60 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Sun, 10 Apr 2016 18:47:33 +0000 Subject: [PATCH 6/8] fix some off by one bugs --- format/Layout.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index 3e2026f588785..48582b3985f7c 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -177,7 +177,7 @@ Would look like: * Length: 5, Null count: 0 * Null bitmap buffer: - | Byte 0 (validity bitmap) | Bytes 1-7 (padding) | + | Byte 0 (validity bitmap) | Bytes 1-7 | |--------------------------|-----------------------| | 00011111 | 0 (padding) | @@ -243,7 +243,7 @@ will have the following representation: * Length: 4, Null count: 1 * Null bitmap buffer: - | Byte 0 (validity bitmap) | Bytes 0-7 | + | Byte 0 (validity bitmap) | Bytes 1-7 | |--------------------------|-----------------------| | 00001101 | 0 (padding) | @@ -484,7 +484,7 @@ will have the following layout: * Types buffer: - | Bytes 0-1 | Bytes 2-3 | Bytes 4-5 | Bytes 6-7 | Bytes 8-9 | Bytes 11-12 | + | Bytes 0-1 | Bytes 2-3 | Bytes 4-5 | Bytes 6-7 | Bytes 8-9 | Bytes 10-11 | |------------|-------------|-------------|-------------|-------------|--------------| | 0 | 1 | 2 | 1 | 0 | 2 | @@ -522,7 +522,7 @@ will have the following layout: * Length: 6, Null count: 4 * Null bitmap buffer: - | Byte 0 (validity bitmap) | Bytes 0-7 | + | Byte 0 (validity bitmap) | Bytes 1-7 | |--------------------------|-----------------------| | 00100100 | 0 (padding) | From cab6f878bf86e33f7a1eeb27cf493ff0a218b56b Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Mon, 11 Apr 2016 03:27:14 +0000 Subject: [PATCH 7/8] a few more consistency fixes --- format/Layout.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/format/Layout.md b/format/Layout.md index 48582b3985f7c..92553d944c2d1 100644 --- a/format/Layout.md +++ b/format/Layout.md @@ -348,7 +348,7 @@ The layout for [{'joe', 1}, {null, 2}, null, {'mark', 4}] would be: * Offsets buffer: - | byte 0-19 | + | Bytes 0-19 | |----------------| | 0, 3, 3, 6, 10 | @@ -358,7 +358,7 @@ The layout for [{'joe', 1}, {null, 2}, null, {'mark', 4}] would be: * Value buffer: - | byte 0-9 | + | Bytes 0-9 | |----------------| | joebobmark | @@ -367,7 +367,7 @@ The layout for [{'joe', 1}, {null, 2}, null, {'mark', 4}] would be: * Null bitmap buffer: Not required * Value Buffer: - | byte 0-15 | + | Bytes 0-15 | |----------------| | 1, 2, 3, 4 | @@ -528,9 +528,9 @@ will have the following layout: * Offsets buffer (int32) - | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | Bytes 24-27 | - |------------|-------------|-------------|-------------|-------------|-------------|-------------| - | 0 | 0 | 0 | 3 | 3 | 3 | 7 | + | Bytes 0-3 | Bytes 4-7 | Bytes 8-11 | Bytes 12-15 | Bytes 16-19 | Bytes 20-23 | Bytes 24-27 | + |------------|-------------|-------------|-------------|-------------|-------------|-------------| + | 0 | 0 | 0 | 3 | 3 | 3 | 7 | * Values array (char array): * Length: 7, Null count: 0 From 00b99efc0195710fb011bfce6b42db6be92e5468 Mon Sep 17 00:00:00 2001 From: Micah Kornfield Date: Thu, 14 Apr 2016 08:01:52 +0000 Subject: [PATCH 8/8] remove png diagrams that are no longer used --- format/diagrams/layout-dense-union.png | Bin 47999 -> 0 bytes format/diagrams/layout-list-of-list.png | Bin 40105 -> 0 bytes format/diagrams/layout-list-of-struct.png | Bin 54122 -> 0 bytes format/diagrams/layout-list.png | Bin 15906 -> 0 bytes format/diagrams/layout-primitive-array.png | Bin 10907 -> 0 bytes format/diagrams/layout-sparse-union.png | Bin 43020 -> 0 bytes 6 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 format/diagrams/layout-dense-union.png delete mode 100644 format/diagrams/layout-list-of-list.png delete mode 100644 format/diagrams/layout-list-of-struct.png delete mode 100644 format/diagrams/layout-list.png delete mode 100644 format/diagrams/layout-primitive-array.png delete mode 100644 format/diagrams/layout-sparse-union.png diff --git a/format/diagrams/layout-dense-union.png b/format/diagrams/layout-dense-union.png deleted file mode 100644 index 5f1f3811bf0056defe19abf494afcaba1bedbb77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47999 zcmeFZbx>W~*DVMH2n2TxF2OB8a0%|gHMj+L2n2V6yF-8wT!RG-8k``(-Q6Wvuan&S z``&x?y1J^XySo4QZk^nO&E9M8z1CcFjycAhCrn8}66G1;Gbku16lp0jWhf|^Z78TG zIS4S|$g&u=Blrv2Nm)`9s(hGu2mF9&FQw%K1%*ou`2#JjOmz%Sn6y;Ybk>xY<2AOk zVKy|eGcsj%x3LFjLqYMo^MZfcm^vGhx!YLVI`O&-Q2aTA7yKJ?n1zDu&neDU0u-9^ zN@TC?98JkMnO`!qQV2dHBO~K?G%@2<7L)kra`2M?g@v=TJueH3o0}W68wazUqd5y3 z4-XFuD?1B2I}c z$No8=p9S*b|HDN5o#j7A!88j#<7fHLk_kSmTw`B=f)a+3786l*hu+WhSjHKDd@Nx6 zfr%L=6;bv{oa$DcJ}z4Eh1HK%FO#L3{JvIdMCmEUTsRDI@$|lOWvV#zT&cF+Uwc

$Tz|>{&V05 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 diff --git a/format/diagrams/layout-list-of-list.png b/format/diagrams/layout-list-of-list.png deleted file mode 100644 index 5bc00784641ab3cb3c3275ce1e52e7ccd3b2ec37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40105 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 R9s~c$NGeLC-Ff)p{{zlJ;^+VX diff --git a/format/diagrams/layout-list-of-struct.png b/format/diagrams/layout-list-of-struct.png deleted file mode 100644 index fb6f2a27e07a766729d12ea33454db011ce6ae00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54122 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 MFY2n5so327KS``}od5s; diff --git a/format/diagrams/layout-list.png b/format/diagrams/layout-list.png deleted file mode 100644 index 167b10b11e37e761de81de8fa9fc8c5c9a30e4f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15906 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 diff --git a/format/diagrams/layout-primitive-array.png b/format/diagrams/layout-primitive-array.png deleted file mode 100644 index bd212f081151234c01f5814be4a4e4e1e4841835..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10907 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�X797#HVGfZ!sz-Zfh5U6d)dv!`Wk70jriy+N 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