Check the list of suggestions I’ve provided to other community member recently. Maybe one will get you back on the path. E.g. launching Node with DEBUG in dev mode to confirm all the necessary routes are set up (by add-on).
BTW in dev mode I launch application in a way as I would on Production (e.g. not using any AC_OPTS
, whereas for PR I would explicitly set NODE_ENV
to ‘production’) – this way I can feel more confident that it would match Production behaviour.
Based on the described symptoms somehow I suspect that it could be related to Postgres (i.e. /installed
will attempt to store clientInfo
in add-on settings and in case it cannot connect – it could be causing the timeout). Try setting up settings store using Sqlite or Memory session storage (instead of Postgres) to confirm/eliminate. I am using Sqlite on production - it is just a single file with one table after all (easy to copy between version updates and application restarts).
Also looked into Heroku - Request Timeout article. It states that Heroku expects application to respond within 30s, otherwise the router will terminate the request. I suggest you to read this article to understand Heroku behaviour and their expectations of your application for handling requests. Addressing H12 Errors (Request-timeouts) is another good article to get familiar with.
I hope that above will help you. If not - let’s dig deeper