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

Generate command serialization methods for passing request through to shards

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Performance
    • None
    • Service Arch

      When forwarding an incoming command request to shards from the router, we first must serialize to BSON and then pass that through to filterCommandRequestForPassthrough. This isn't ergonomic, as it is really easy to forget to do this, and it also isn't performant, since it involves both scanning the serialized request and making copies of fields from it. We should instead have the IDL compiler generate serialization methods specific to command structs which will only include fields defined in the command request itself or are marked as forward_to_shards: true. Once we have this, we can delete CommandHelpers::filterCommandRequestForPassthrough.

            Assignee:
            Unassigned Unassigned
            Reporter:
            patrick.freed@mongodb.com Patrick Freed
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: