[SERVER-63593] Support compressing arrays in BSONColumn Created: 11/Feb/22 Updated: 29/Oct/23 Resolved: 28/Mar/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 6.0.0-rc0 |
| Type: | New Feature | Priority: | Major - P3 |
| Reporter: | Henrik Edin | Assignee: | Henrik Edin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Major Change | ||||||||||||||||||||||||||||||||
| Sprint: | Execution Team 2022-03-07, Execution Team 2022-03-21, Execution Team 2022-04-04 | ||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||
| Description |
|
Add support for Arrays for the sub-object compression mode in BSONColumn. Arrays can mostly be treated as Objects but care need to be taken so we don't merge in when the types are different. Because there is existing data using this feature, we cannot use the existing control byte for sub-object mode start. An existing reference object with a sub-array need to not look for interleaved data for the array content. Arrays can also exist at the root level and we need a separate control byte for interleave start as an array. So: |
| Comments |
| Comment by Githook User [ 23/Mar/22 ] |
|
Author: {'name': 'Henrik Edin', 'email': 'henrik.edin@mongodb.com', 'username': 'henrikedin'}Message: Two new control bytes are introduced. One for indicating array support and the other for array support with an array root object. The decompressor handle both the new and the old format while the compressor selects implementation based on a new feature flag. |