From log file in production.
500: internal_error (message="500: internal_error", status=500, type=internal_error, detail="Cannot read property 'indexOf' of undefined", levelPath=error/500, request_id=a3d71ed3-9406-11e7-8e78-11414b1d2af5) stack: TypeError: Cannot read property 'indexOf' of undefined at sections.forEach (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/src/lib/transformations/markReferenceSections.js:34:17) at Array.forEach (native) at Object.markReferenceSections (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/src/lib/transformations/markReferenceSections.js:26:14) at buildRemaining (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/src/routes/mobile-sections.js:161:20) at buildAll (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/src/routes/mobile-sections.js:194:20) at _collectRawPageData.then (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/src/routes/mobile-sections.js:323:20) at tryCatcher (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:512:31) at Promise._settlePromise (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:569:18) at Promise._settlePromise0 (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:614:10) at Promise._settlePromises (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:693:18) at Promise._fulfill (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:638:18) at Promise._resolveCallback (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:432:57) at Promise._settlePromiseFromHandler (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:524:17) at Promise._settlePromise (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:569:18) at Promise._settlePromise0 (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:614:10) at Promise._settlePromises (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:693:18) at Promise._fulfill (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise.js:638:18) at PropertiesPromiseArray.PromiseArray._resolve (/srv/deployment/mobileapps/deploy-cache/revs/507a479c96953ff0b3fa5ba12472b0c56570c138/node_modules/bluebird/js/release/promise_array.js:126:19) -- request: { "url": "/fr.wikipedia.org/v1/page/mobile-sections/Portail%3ABaroque", ... "method": "GET", "params": { "0": "/fr.wikipedia.org/v1/page/mobile-sections/Portail:Baroque" }, ... }
So, to repro run this on one of the production boxes:
curl http://localhost:8888/fr.wikipedia.org/v1/page/mobile-sections/Portail:Baroque {"status":500,"type":"internal_error","title":"TypeError","detail":"Cannot read property 'indexOf' of undefined","method":"GET","uri":"/fr.wikipedia.org/v1/page/mobile-sections/Portail:Baroque"}
Another example: http://localhost:8888/fy.wikipedia.org/v1/page/mobile-sections/De_Kanto%27s
To repro locally:
http://localhost:6927/fy.wikipedia.org/v1/page/mobile-sections/De_Kanto%27s
More cases are listed in P5992.