Issues with listed releases in UI on new install of Mender 2.0

Hey folks,

I’ve just done a fresh install of 2.0 onto a dedicated server after running into problems on a shared one.

As soon as I click on “releases”, I get a blank screen with the following error on the Javascript console:

main.js:1 Uncaught TypeError: Promise.all(...).catch(...).finally is not a function
    at Artifacts.value (main.js:1)
    at Artifacts.value (main.js:1)
    at Oi (main.js:1)
    at Ki (main.js:1)
    at Li (main.js:1)
    at fi (main.js:1)
    at uf (main.js:1)
    at Si (main.js:1)
    at Ti (main.js:1)
    at Yi.render (main.js:1)

I’m not sure which container log I should be looking at in order to troubleshoot this - the API logs show

2019/05/16 11:15:50 [warn] 29#29: *220 an upstream response is buffered to a temporary file /usr/local/openresty/nginx/proxy_temp/6/00/0000000006 while reading upstream, client: 51.148.135.105, server: <MYHOST>, request: "GET /ui/main.js HTTP/1.1", upstream: "http://172.19.0.3:80/main.js", host: "<MYHOST>", referrer: "https://<MYHOST>/ui/"

but the storage-proxy (which I think is where this error is coming from) doesn’t show any log messages at all other than text telling you how to access it.

Has anyone seen this before? Is it a bug? Have I configured something wrong?

OK, I’ve done a bit more digging and the error seems to lie around line 86708 of main.js when you prettify it in the Chrome dev console:

{
            key: "_getReleases",
            value: function() {
                var self = this;
                return Promise.all([app_actions.getReleases(), app_actions.getArtifacts()]).catch(function(err) {
                    var errormsg = err.error || "Please check your connection";
                    app_actions.setSnackbar(errormsg, 5e3, ""),
                    console.log(errormsg)
                }).finally(function() {
                    self.setState({
                        doneLoading: !0
                    })
                })
            }
        },

It’s the finally clause that’s being triggered and causing the error

Found it (with some help from a developer friend).

I was running version 0.62 of Chrome, finally() wasn’t supported until 0.64.

Upgrading chrome made this error go away.

1 Like

Thanks for catching that and posting your findings!
The browser compatibility for finally() is here: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/finally

1 Like