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

Use IDL to represent DeleteRequest

    • Fully Compatible
    • Query 2020-03-09, Query 2020-03-23

      Convert the struct-like class to be represented by the IDL.

      Original Description:

      There is a case to be made that the various getFoo/setFoo functions should be obviated and replaced by public member variables in classes like QueryRequest, FindAndModifyRequest, etc. We opened a debate in SERVER-46115 but do not want to hold up progress to settle this debate, so we will do that in this ticket. Some options:
      1) Accept a mix of getters/setters and public members
      2) Fall back to getters/setters
      3) Replace getters/setters with public members
      4) Replace these classes with IDL types

      The full list of struct-like classes to be considered is: QueryRequest, FindAndModifyRequest, DeleteRequest, UpdateRequest, AggregationRequest.

      Notably, GetMoreRequest has public members.

      As a first step, I think we should attempt to convert to the IDL and delete a lot of the parsing code. We can look towards src/mongo/db/ops/write_ops.idl as a good example.

            isabel.atkinson@mongodb.com Isabel Atkinson
            charlie.swanson@mongodb.com Charlie Swanson
            0 Vote for this issue
            2 Start watching this issue