Break unlisted circular dependency between logger and foundation libraries.

XMLWordPrintableJSON

    • Fully Compatible
    • Platform 7 08/10/15
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The "mongo/foundation" library depends on "mongo/logger/logger", but "mongo/logger/logger" has an unlisted circular dependency back to "mongo/foundation" for time_support.cpp. mongo/util/time_support.cpp in turn depends on mongo/util/assert_util.cpp, which depends on various parts of the logger. To break the dependency chain, split out of time_support.cpp the basic functions for reading the current time and formatting times and dates. Then, remove the fasserts() from those functions, which should provably never fire. Put those functions into a basic time library in "base". Also, there is a verify() in ramlog.cpp, which we should be able to eliminate by making RamLog::toHTML a free function implemented in the webserver library.

              Assignee:
              Unassigned
              Reporter:
              Andy Schwerin
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: