Expose additional TCMalloc statistics in server status at lower verbosity levels

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Workload Resilience
    • WR Prioritized list
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Currently at all verbosity levels below 3 we only include TCMalloc statistics obtained from `MallocExtension::GetNumericProperty`. While many of these properties are useful (TODO: Link doc), there are many more stats that are only included in the giant string that we get at verbosity level 3.

      This string currently comes from `MallocExtension::DumpStats`, which is not easily machine readable, but there is also `MallocExtension::DumpStatsInPbtxt` which provides those same stats in the machine readable Protobuf text format. We should use the latter instead, and expose additional useful stats as fields directly in server status at lower verbosity levels rather than requiring users to both specify the maximum verbosity level and also parse a large and unstructured string. We can also parse stats that we already expose from that same Protobuf text file and avoid repeated wasteful calls to `MallocExtension::GetNumericProperty`, which redoes a bunch of the same work with each individual call.

            Assignee:
            Unassigned
            Reporter:
            Andrew Lin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: