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

optimize includes in IDL generated files

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 7.1.0-rc0
    • None
    • None
    • None
    • Fully Compatible
    • ALL
    • Security 2023-05-01

    Description

      IDL generated files include a lot of files. Some of these are injected by generator.py automatically. At least one, "commands.h", is no longer needed. There are 467 idl files at time of writing so saving time in the generated files will have a cumulative effect.

      For example, removing "commands.h" on my machine saved ~2.5s on compilation for a single generated file (fle2_get_count_info_command_gen.cpp) for a debug clang 15 x64 build.

      Original:
      Time (mean ± σ): 7.070 s ± 0.198 s [User: 6.657 s, System: 0.361 s]
      Range (min … max): 6.848 s … 7.501 s 10 runs

      New:
      Time (mean ± σ): 4.330 s ± 0.077 s [User: 4.093 s, System: 0.205 s]
      Range (min … max): 4.248 s … 4.507 s 10 runs

      Attachments

        Activity

          People

            mark.benvenuto@mongodb.com Mark Benvenuto
            mark.benvenuto@mongodb.com Mark Benvenuto
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: