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

Add a way to bypass storageValid() for time-series updates

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 5.1.0-rc0, 5.0.22
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Fully Compatible
    • v5.0
    • Execution Team 2021-10-04
    • 135

      storage_validation::storageValid is called by ObjectReplaceExecutor::applyReplacementUpdate even when validateForStorage is set to false. It scans the bucket document for . or $ characters in field names. As the bucket document grows this gets slower and slower and we basically have quadratic time complexity.

      None of this should be needed for timeseries updates as we control the data. We should have a way to skip this. Commenting out the line gives 60% better single threaded insert performance using tsbs.

            Assignee:
            yuhong.zhang@mongodb.com Yuhong Zhang
            Reporter:
            henrik.edin@mongodb.com Henrik Edin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: