Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MariaDB breaking the reddit auth to get into the web UI #128

Closed
CryptoMaximalist opened this issue Nov 24, 2022 · 1 comment
Closed

MariaDB breaking the reddit auth to get into the web UI #128

CryptoMaximalist opened this issue Nov 24, 2022 · 1 comment

Comments

@CryptoMaximalist
Copy link

Tonight I added redis which works great, but when I added MariaDB it broke access to the operator webUI. I added MariaDB as another docker container (not via compose), and the version matches what I found in github docs (10.9.3). This is my config file's database lines:

databaseConfig:
  connection:
    type: 'mariadb'
    host: mariadb
    username: 'cmuser'
    password: 'password'
    database: 'ContextMod'

When I run with that, the bot does start up and run. It confirms it's using MariaDB now instead of sqlite:

2022-11-24T04:13:43+00:00 warn   : [App] Failed to find .env file at path: /config/.env -- can be ignored if you didn't include one!
2022-11-24T04:13:43+00:00 debug  : [App] No operator config explicitly specified. Will look for default configs (config.json, config.yaml) at default path (/config)
2022-11-24T04:13:43+00:00 warn   : [App] No operator config file found at /config/config.json
2022-11-24T04:13:43+00:00 verbose: [App] Found operator config at /config/config.yaml
2022-11-24T04:13:43+00:00 info   : [App] [Database] Using 'mariadb' database type
2022-11-24T04:13:43+00:00 info   : [Web] [Database] Using 'mariadb' database type
2022-11-24T04:13:43+00:00 verbose: [Web] [Docs] Docs are already generated.
2022-11-24T04:13:43+00:00 info   : [Web] Initializing database...
2022-11-24T04:13:43+00:00 info   : [Web] [Database] [Migration] Checking if migrations are required...
2022-11-24T04:13:43+00:00 info   : [Web] [Database] [Migration] [X] initWeb1642180264564
2022-11-24T04:13:43+00:00 info   : [Web] [Database] [Migration] [X] removeInvites1660588028346
2022-11-24T04:13:43+00:00 info   : [Web] [Database] [Migration] No migrations required!
2022-11-24T04:13:43+00:00 info   : [Web] Web UI started: http://localhost:8085
2022-11-24T04:13:43+00:00 info   : [App] API started => localhost:8095
2022-11-24T04:13:43+00:00 info   : [App] Operators: CryptoContextModBot
2022-11-24T04:13:43+00:00 info   : [App] Initializing database...
2022-11-24T04:13:43+00:00 info   : [App] [Database] [Migration] Checking if migrations are required...
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] initApi1642180264563
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] initialData1642180274563
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] indexes1653586738904
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] reportTracking1657632517934
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] Guests1658930394548
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] invites1660228987769
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] submission1661183583080
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] subredditInvite1663001719622
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] [X] mhs1663609045418
2022-11-24T04:13:44+00:00 info   : [App] [Database] [Migration] No migrations required!
2022-11-24T04:13:44+00:00 info   : [App] Initializing application...
2022-11-24T04:13:44+00:00 verbose: [App] Building bots...
node_redis: Warning: Redis server does not require a password, but a password was supplied.

After the startup logs it will even run the bot and start running checks against events. However when I try to go to the dashboard on port 8085 the logs show this:

QueryFailedError: ER_NOT_SUPPORTED_YET: This version of MariaDB doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
    at Query.<anonymous> (/app/node_modules/typeorm/driver/mysql/MysqlQueryRunner.js:158:37)
    at Query.<anonymous> (/app/node_modules/mysql/lib/Connection.js:526:10)
    at Query._callback (/app/node_modules/mysql/lib/Connection.js:488:16)
    at Query.Sequence.end (/app/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24)
    at Query.ErrorPacket (/app/node_modules/mysql/lib/protocol/sequences/Query.js:92:8)
    at Protocol._parsePacket (/app/node_modules/mysql/lib/protocol/Protocol.js:291:23)
    at Parser._parsePacket (/app/node_modules/mysql/lib/protocol/Parser.js:433:10)
    at Parser.write (/app/node_modules/mysql/lib/protocol/Parser.js:43:10)
    at Protocol.write (/app/node_modules/mysql/lib/protocol/Protocol.js:38:16)
    at Socket.<anonymous> (/app/node_modules/mysql/lib/Connection.js:88:28)
    at Socket.<anonymous> (/app/node_modules/mysql/lib/Connection.js:526:10)
    at Socket.emit (node:events:526:28)
    at addChunk (node:internal/streams/readable:315:12)
    at readableAddChunk (node:internal/streams/readable:289:9)
    at Socket.Readable.push (node:internal/streams/readable:228:10)
    at TCP.onStreamRead (node:internal/stream_base_commons:190:23)

In the browser, it does reach reddit and ask for authorization as normal. But when I click Authorize, it times out and errors out with "Unexpected state value returned" and the logs look like this:

2022-11-24T04:13:36+00:00 error  : [App] unhandledRejection: Cannot read properties of undefined (reading 'state')
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)
2022-11-24T04:13:36+00:00 error  : [App] unhandledRejection: Cannot read properties of undefined (reading 'state')
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)
2022-11-24T04:13:36+00:00 error  : [Web] unhandledRejection: Cannot read properties of undefined (reading 'state')
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)
TypeError: Cannot read properties of undefined (reading 'state')
    at Strategy._verify (/app/src/Web/Client/index.js:266:30)
    at Strategy.authenticate (/app/node_modules/passport-custom/lib/strategy.js:60:8)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at /app/src/Web/Client/index.js:470:11
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at /app/node_modules/@awaitjs/express/index.js:90:8
    at botCallback (/app/src/Web/Client/index.js:444:20)
    at wrappedMiddleware (/app/node_modules/@awaitjs/express/index.js:62:26)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at next (/app/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/app/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at /app/node_modules/express/lib/router/index.js:284:15
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at SessionStrategy.strategy.pass (/app/node_modules/passport/lib/middleware/authenticate.js:343:9)
    at SessionStrategy.authenticate (/app/node_modules/passport/lib/strategies/session.js:75:10)
    at attempt (/app/node_modules/passport/lib/middleware/authenticate.js:366:16)
    at authenticate (/app/node_modules/passport/lib/middleware/authenticate.js:367:7)
    at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/app/node_modules/express/lib/router/index.js:328:13)
    at /app/node_modules/express/lib/router/index.js:286:9
    at Function.process_params (/app/node_modules/express/lib/router/index.js:346:12)
    at next (/app/node_modules/express/lib/router/index.js:280:10)
    at initialize (/app/node_modules/passport/lib/middleware/initialize.js:53:5)

After this in the logs, it does the startup logs again which seems like it fully crashes out actually.

I was on the 11-16 edge branch and pulled the new one from the 21st, but it behaves the same. CM works totally well with sqlite so I'm fine as-is and please don't worry about this during the holidays, I just wanted to log this for awareness

@FoxxMD
Copy link
Owner

FoxxMD commented Nov 29, 2022

@CryptoMaximalist this should be fixed in edge now

@FoxxMD FoxxMD closed this as completed in ef372e5 Nov 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants