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

Add operator<<(bool) to StringBuilderImpl

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.4.1, 3.5.1
    • Affects Version/s: 3.4.0-rc4
    • Component/s: Performance
    • None
    • Fully Compatible
    • Query 2016-12-12
    • 0

      Running the "Queries.IntNonIdFindOne" mongo-perf test while profiling mongod under VTune shows the StringBuilderImpl operator<<(int) as a significant hotspot. This stems from writing boolean values to StringBuilder in the read/update/delete path during query planning. As we don't implement a boolean stream handler, booleans are handled as type int, and are written inefficiently via snprintf. A boolean operator can be written that will perform the same action in a (much) more efficient manner.

            Assignee:
            james.wahlin@mongodb.com James Wahlin
            Reporter:
            james.wahlin@mongodb.com James Wahlin
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: