Still trying to figure this out. The error log is full of messages like the one below, which seem to come from the Admin client, although I don’t know if it’s related. Anyone seen this before?
{
"name":"Log",
"hostname":"myhostname",
"pid":1210,
"level":50,
"req":{
"meta":{
"requestId":"8baca982-1670-4d19-884e-e7aed3bf369f",
"userId":"605f91aa7869d305efd920d9"
},
"url":"/notifications/",
"method":"GET",
"originalUrl":"/ghost/api/canary/admin/notifications/",
"params":{
},
"headers":{
"x-forwarded-for":"216.208.210.147",
"x-forwarded-proto":"https",
"x-real-ip":"216.208.210.147",
"host":"mydomain.com",
"connection":"close",
"accept":"application/json, text/javascript, */*; q=0.01",
"dnt":"1",
"x-requested-with":"XMLHttpRequest",
"x-ghost-version":"4.5",
"app-pragma":"no-cache",
"user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36",
"content-type":"application/json; charset=UTF-8",
"sec-fetch-site":"same-origin",
"sec-fetch-mode":"cors",
"sec-fetch-dest":"empty",
"referer":"https://mydomain.com/ghost/",
"accept-encoding":"gzip, deflate, br",
"accept-language":"en-GB,en-US;q=0.9,en;q=0.8",
"cookie":"**REDACTED**"
},
"query":{
}
},
"res":{
"_headers":{
"x-powered-by":"Express",
"cache-control":"no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0",
"content-type":"application/json; charset=utf-8",
"content-length":"259",
"etag":"W/\"103-ztj2XPieAO4mu7ads8IExoZ6hhE\"",
"vary":"Accept-Encoding"
},
"statusCode":500,
"responseTime":"22ms"
},
"err":{
"id":"1f1c4200-b50d-11eb-abde-6fe45ee69714",
"domain":"https://mydomain.com",
"code":null,
"name":"InternalServerError",
"statusCode":500,
"level":"normal",
"message":"allNotifications.forEach is not a function",
"stack":"InternalServerError: allNotifications.forEach is not a function\n at new GhostError (/var/www/ghost/versions/4.5.0/node_modules/@tryghost/errors/lib/errors.js:10:26)\n at _private.prepareError (/var/www/ghost/versions/4.5.0/core/server/web/shared/middlewares/error-handler.js:53:19)\n at Layer.handle_error (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/layer.js:71:5)\n at trim_prefix (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:315:13)\n at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:335:12)\n at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:275:10)\n at Layer.handle_error (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/layer.js:67:12)\n at trim_prefix (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:315:13)\n at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:335:12)\n at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:275:10)\n at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:635:15\n at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:260:14)\n at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/route.js:127:14)\n at /var/www/ghost/versions/4.5.0/core/server/api/shared/http.js:124:17\n at tryCatcher (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/util.js:16:23)\n at Promise._settlePromiseFromHandler (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:547:31)\n at Promise._settlePromise (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:604:18)\n at Promise._settlePromise0 (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:649:10)\n at Promise._settlePromises (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:725:18)\n at _drainQueueStep (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:93:12)\n\nTypeError: allNotifications.forEach is not a function\n at Notifications.fetchAllNotifications (/var/www/ghost/versions/4.5.0/core/server/services/notifications/notifications.js:26:26)\n at Notifications.browse (/var/www/ghost/versions/4.5.0/core/server/services/notifications/notifications.js:42:37)\n at Object.query (/var/www/ghost/versions/4.5.0/core/server/api/canary/notifications.js:11:34)\n at Object.query (/var/www/ghost/versions/4.5.0/core/server/api/shared/pipeline.js:156:24)\n at /var/www/ghost/versions/4.5.0/core/server/api/shared/pipeline.js:243:35\n at tryCatcher (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/util.js:16:23)\n at Promise._settlePromiseFromHandler (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:547:31)\n at Promise._settlePromise (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:604:18)\n at Promise._settlePromise0 (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:649:10)\n at Promise._settlePromises (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:729:18)\n at _drainQueueStep (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:93:12)\n at _drainQueue (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:86:9)\n at Async._drainQueues (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:102:5)\n at Immediate.Async.drainQueues [as _onImmediate] (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:15:14)\n at processImmediate (internal/timers.js:461:21)"
},
"msg":"allNotifications.forEach is not a function",
"time":"2021-05-14T23:35:52.611Z",
"v":0
}