502 Bad Gateway app/checkStatus Error

Hi, I’m running on the production server, I got the error "The health page is not responding. “hollaex server --start” command shows that the exchange is up and running. Visiting /v2/health , /v2/constant, I get nginx 502 Bad Gateway. Please need help. Here is command “hollaex logs” result

{"level":"error","message":"app/checkStatus Error  relation \"Statuses\" does not exist","timestamp":"2022-03-21T07:14:17.831Z"}
Mon, 21 Mar 2022 07:14:38 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
{"level":"verbose","message":"init/checkStatus checking exchange status","timestamp":"2022-03-21T07:14:41.343Z"}
{"message":"Connect to PubSub ","level":"verbose","timestamp":"2022-03-21T07:14:41.455Z"}
{"message":"Connect to redis ","level":"verbose","timestamp":"2022-03-21T07:14:41.465Z"}
{"message":"Authenticated to PubSub ","level":"verbose","timestamp":"2022-03-21T07:14:41.481Z"}
{"message":"PubSub is ready ","level":"info","timestamp":"2022-03-21T07:14:41.482Z"}
{"message":"Authenticated to redis ","level":"verbose","timestamp":"2022-03-21T07:14:41.489Z"}
{"message":"Redis is ready ","level":"info","timestamp":"2022-03-21T07:14:41.492Z"}
{"level":"error","message":"app/checkStatus Error  relation \"Statuses\" does not exist","timestamp":"2022-03-21T07:14:41.705Z"}
Mon, 21 Mar 2022 07:15:27 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
{"level":"verbose","message":"init/checkStatus checking exchange status","timestamp":"2022-03-21T07:15:30.071Z"}
{"message":"Connect to PubSub ","level":"verbose","timestamp":"2022-03-21T07:15:30.175Z"}
{"message":"Connect to redis ","level":"verbose","timestamp":"2022-03-21T07:15:30.184Z"}
{"message":"Authenticated to PubSub ","level":"verbose","timestamp":"2022-03-21T07:15:30.198Z"}
{"message":"PubSub is ready ","level":"info","timestamp":"2022-03-21T07:15:30.198Z"}
{"message":"Authenticated to redis ","level":"verbose","timestamp":"2022-03-21T07:15:30.205Z"}

Your exchange is not initialized correctly. I suggest doing the process again from scratch after terminating the exchange using https://docs.hollaex.com/command-list/command-list#terminate-2

I have terminated the server using “hollaex server --terminate”, then run “hollaex server --setup --force”, and now I’m still experiencing the same problem. How do I terminate the exchange completely and start all over again? I am running on self hosting production server

Here is the status error during server setup, could be the cause of the problem am having. please help

Error response from daemon: Container 55dc67fb69ca424d1c5e9c9ca13be2830689bb58e2c090425bb is restarting, wait until the container is running

Updating the secrets…
Fri, 25 Mar 2022 08:10:19 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
{“message”:"Connect to PubSub ",“level”:“verbose”,“timestamp”:“2022-03-25T08:10:20.898Z”}
{“message”:"Authenticated to PubSub ",“level”:“verbose”,“timestamp”:“2022-03-25T08:10:21.018Z”}
{“message”:"PubSub is ready ",“level”:“info”,“timestamp”:“2022-03-25T08:10:21.019Z”}
tools/dbs/checkConfig err { SequelizeDatabaseError: relation “Statuses” does not exist
at Query.formatError (/app/node_modules/sequelize/lib/dialects/postgres/query.js:363:16)
at query.catch.err (/app/node_modules/sequelize/lib/dialects/postgres/query.js:86:18)
at tryCatcher (/app/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/app/node_modules/bluebird/js/release/promise.js:512:31)
at Promise._settlePromise (/app/node_modules/bluebird/js/release/promise.js:569:18)
at Promise._settlePromise0 (/app/node_modules/bluebird/js/release/promise.js:614:10)
at Promise._settlePromises (/app/node_modules/bluebird/js/release/promise.js:690:18)
at _drainQueueStep (/app/node_modules/bluebird/js/release/async.js:138:12)
at _drainQueue (/app/node_modules/bluebird/js/release/async.js:131:9)
at Async._drainQueues (/app/node_modules/bluebird/js/release/async.js:147:5)
at Immediate.Async.drainQueues [as _onImmediate] (/app/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:705:18)
at tryOnImmediate (timers.js:676:5)
at processImmediate (timers.js:658:5)
name: ‘SequelizeDatabaseError’,
parent:
{ error: relation “Statuses” does not exist
at Connection.parseE (/app/node_modules/pg/lib/connection.js:567:11)
at Connection.parseMessage (/app/node_modules/pg/lib/connection.js:391:17)
at Socket. (/app/node_modules/pg/lib/connection.js:129:22)
at Socket.emit (events.js:198:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:269:11)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
name: ‘error’,
length: 108,
severity: ‘ERROR’,
code: ‘42P01’,
detail: undefined,
hint: undefined,
position: ‘162’,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: ‘parse_relation.c’,
line: ‘1180’,
routine: ‘parserOpenTable’,
sql:
‘SELECT “id”, “activated”, “initialized”, “blocked”, “activation_code”, “secrets”, “kit”, “api_key”, “api_secret”, “kit_version”, “created_at”, “updated_at” FROM “Statuses” AS “Status” LIMIT 1;’ },
original:
{ error: relation “Statuses” does not exist
at Connection.parseE (/app/node_modules/pg/lib/connection.js:567:11)
at Connection.parseMessage (/app/node_modules/pg/lib/connection.js:391:17)
at Socket. (/app/node_modules/pg/lib/connection.js:129:22)
at Socket.emit (events.js:198:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:269:11)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
name: ‘error’,
length: 108,
severity: ‘ERROR’,
code: ‘42P01’,
detail: undefined,
hint: undefined,
position: ‘162’,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: ‘parse_relation.c’,
line: ‘1180’,
routine: ‘parserOpenTable’,
sql:
‘SELECT “id”, “activated”, “initialized”, “blocked”, “activation_code”, “secrets”, “kit”, “api_key”, “api_secret”, “kit_version”, “created_at”, “updated_at” FROM “Statuses” AS “Status” LIMIT 1;’ },
sql:
‘SELECT “id”, “activated”, “initialized”, “blocked”, “activation_code”, “secrets”, “kit”, “api_key”, “api_secret”, “kit_version”, “created_at”, “updated_at” FROM “Statuses” AS “Status” LIMIT 1;’ }
Setting up the version number based on the current Kit.
Fri, 25 Mar 2022 08:10:26 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13

It means that something really went wrong during the setup process.

I recommend you to go through the setup process again, after fully terminating the exchange.

On your next setup, I recommend you to fully monitor the logs output. There gonna be something got wrong definitely.

It would be great if you can post the entire logs output you get from the setup.

1 Like

I have the exact same issue. Just created a new “AWS EC2 Instance” using Linux 2. Did the setup process as instructed and got the same error.

I terminated the instance. Followed the instructions again and got the same error. The current build might not work in the latest AWS instance.

1 Like

Okay that’s weird. Any error logs you got?

2 Likes