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

Replace MaterializedRow with FixedSizeRow<1> in SBE HashLookup* stages

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution

      HashLookupStage and (once SERVER-82298 is delivered) HashLookupUnwindStage use the MaterializedRow container, which supports an arbitrary number of columns, but there is only ever one column in any of these rows.

      These should be changed to use the newer, more efficient container FixedSizeRow<1>.

      This will requiring implementing various infrastructure MaterializedRow already has but that FixedSizeRow is missing, such as

      • size estimation
      • key encoding
      • type aliases
      • type definitions for hasher and equality
      • SpillingStore support

      Most of this can be done by templatizing existing classes and functions that are already used for the same things by MaterializedRow.

            Assignee:
            backlog-query-execution [DO NOT USE] Backlog - Query Execution
            Reporter:
            kevin.cherkauer@mongodb.com Kevin Cherkauer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: