From d507eec2e877651a3d77e51b3c2e8226959e4ba3 Mon Sep 17 00:00:00 2001 From: Kevin Heis Date: Thu, 17 Dec 2020 11:40:25 -0800 Subject: [PATCH] Fix load site data reporting wrong timing data (#17050) --- lib/redirects/precompile.js | 2 +- lib/site-data.js | 12 ++++++------ lib/warm-server.js | 18 +++++++++--------- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/lib/redirects/precompile.js b/lib/redirects/precompile.js index a7682edab339..d221a0f52643 100755 --- a/lib/redirects/precompile.js +++ b/lib/redirects/precompile.js @@ -10,7 +10,7 @@ const nonEnterpriseDefaultVersion = require('../non-enterprise-default-version') // This function runs at server warmup and precompiles possible redirect routes. // It outputs them in key-value pairs within a neat Javascript object: { oldPath: newPath } -module.exports = async function precompileRedirects (pageList, pageMap) { +module.exports = function precompileRedirects (pageList, pageMap) { const allRedirects = {} // 1. CURRENT PAGES PERMALINKS AND FRONTMATTER diff --git a/lib/site-data.js b/lib/site-data.js index bdd47f1ce7dc..825cba5f2271 100755 --- a/lib/site-data.js +++ b/lib/site-data.js @@ -5,9 +5,9 @@ const languages = require('./languages') const dataDirectory = require('./data-directory') const encodeBracketedParentheticals = require('./encode-bracketed-parentheticals') -const loadSiteDataFromDir = async dir => ({ +const loadSiteDataFromDir = dir => ({ site: { - data: await dataDirectory(path.join(dir, 'data'), { + data: dataDirectory(path.join(dir, 'data'), { preprocess: dataString => encodeBracketedParentheticals(dataString.trimEnd()), ignorePatterns: [/README\.md$/] @@ -15,10 +15,10 @@ const loadSiteDataFromDir = async dir => ({ } }) -module.exports = async function loadSiteData () { +module.exports = function loadSiteData () { // load english site data const siteData = { - en: await loadSiteDataFromDir(languages.en.dir) + en: loadSiteDataFromDir(languages.en.dir) } // load and add other language data to siteData where keys match english keys, @@ -26,7 +26,7 @@ module.exports = async function loadSiteData () { const englishKeys = Object.keys(flat(siteData.en)) for (const language of Object.values(languages)) { if (language.code === 'en') continue - const data = await loadSiteDataFromDir(language.dir) + const data = loadSiteDataFromDir(language.dir) for (const key of englishKeys) { set( siteData, @@ -45,5 +45,5 @@ module.exports = async function loadSiteData () { ) } - return Promise.resolve(siteData) + return siteData } diff --git a/lib/warm-server.js b/lib/warm-server.js index cb5e03837cff..5d32a143ede4 100644 --- a/lib/warm-server.js +++ b/lib/warm-server.js @@ -9,7 +9,7 @@ const loadSiteTree = require('./site-tree') const dog = { loadPages: statsd.timer(loadPages, 'load_pages'), loadPageMap: statsd.timer(loadPageMap, 'load_page_map'), - loadRedirects: statsd.asyncTimer(loadRedirects, 'load_redirects'), + loadRedirects: statsd.timer(loadRedirects, 'load_redirects'), loadSiteData: statsd.timer(loadSiteData, 'load_site_data'), loadSiteTree: statsd.asyncTimer(loadSiteTree, 'load_site_tree') } @@ -39,20 +39,20 @@ async function warmServer () { console.log('Priming context information...') } - if (!pageList || !site) { - // Promise.all is used to load multiple things in parallel - [pageList, site] = await Promise.all([ - pageList || dog.loadPages(), - site || dog.loadSiteData() - ]) + if (!pageList) { + pageList = dog.loadPages() + } + + if (!site) { + site = dog.loadSiteData() } if (!pageMap) { - pageMap = await dog.loadPageMap(pageList) + pageMap = dog.loadPageMap(pageList) } if (!redirects) { - redirects = await dog.loadRedirects(pageList, pageMap) + redirects = dog.loadRedirects(pageList, pageMap) } if (!siteTree) {