Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-59199

Support KeyStrings with RecordId strings longer than 127 bytes

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 5.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Fully Compatible
    • Execution Team 2021-09-20, Execution Team 2021-10-04
    • 155

      We currently support encoding RecordId strings at the end of a KeyString for secondary index support on clustered collections.

      The current encoding is designed to be read in reverse from the end of the string. The 1-byte size is appended at the end, preceded by the string contents. The current string encoding only supports encoding strings up to 127 bytes long, or what fits in 7 bits.

      Extend the encoding to support larger strings. Use the unused high bit as a continuation bit that indicates the presence of a preceding size byte. Continue encoding right-to-left until there are no more size bytes remaining with continuation bits.

            Assignee:
            josef.ahmad@mongodb.com Josef Ahmad
            Reporter:
            louis.williams@mongodb.com Louis Williams
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: