Yooooomi / your_spotify

Self hosted Spotify tracking dashboard
GNU General Public License v3.0
2.77k stars 110 forks source link

Bug - YS Server cant talk to Mongo - possibly broken in an update? #281

Closed jamess60 closed 11 months ago

jamess60 commented 11 months ago

YS Server is inaccessible after a recent update.

Using mongo:latest (from 2023-08-17) and YS Server and Client :latest (from 2023-07-24)

Logs: at MessageStream. (/app/node_modules/mongodb/lib/cmap/connection.js:61:60) at MessageStream.emit (node:events:513:28) at processIncomingData (/app/node_modules/mongodb/lib/cmap/message_stream.js:124:16) at MessageStream._write (/app/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:391:12) at _write (node:internal/streams/writable:332:10) at MessageStream.Writable.write (node:internal/streams/writable:336:10) at Socket.ondata (node:internal/streams/readable:754:22) at Socket.emit (node:events:513:28) { ok: 0, code: 7369100, codeName: 'Location7369100', [Symbol(errorLabels)]: Set(0) {} } error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. Setting CORS to 'all' is not needed anymore, omitting it is the new way of authorizing every origin. yarn run v1.22.19 $ node ./lib/migrations.js [info] Trying to connect to database at mongodb://mongo_your_spotify_server:27017/your_spotify [info] Connected to database ! [info] Setting feature compatibility version to 7.0 /app/node_modules/mongodb/lib/cmap/connection.js:202 callback(new error_1.MongoServerError(document)); ^ MongoServerError: Once you have upgraded to 7.0, you will not be able to downgrade FCV and binary version without support assistance. Please re-run this command with 'confirm: true' to acknowledge this and continue with the FCV upgrade. at Connection.onMessage (/app/node_modules/mongodb/lib/cmap/connection.js:202:26) at MessageStream. (/app/node_modules/mongodb/lib/cmap/connection.js:61:60) at MessageStream.emit (node:events:513:28) at processIncomingData (/app/node_modules/mongodb/lib/cmap/message_stream.js:124:16) at MessageStream._write (/app/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:391:12) at _write (node:internal/streams/writable:332:10) at MessageStream.Writable.write (node:internal/streams/writable:336:10) at Socket.ondata (node:internal/streams/readable:754:22) at Socket.emit (node:events:513:28) { ok: 0, code: 7369100, codeName: 'Location7369100', [Symbol(errorLabels)]: Set(0) {} } error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. Setting CORS to 'all' is not needed anymore, omitting it is the new way of authorizing every origin. yarn run v1.22.19 $ node ./lib/migrations.js [info] Trying to connect to database at mongodb://mongo_your_spotify_server:27017/your_spotify [info] Connected to database ! [info] Setting feature compatibility version to 7.0 /app/node_modules/mongodb/lib/cmap/connection.js:202 callback(new error_1.MongoServerError(document)); ^ MongoServerError: Once you have upgraded to 7.0, you will not be able to downgrade FCV and binary version without support assistance. Please re-run this command with 'confirm: true' to acknowledge this and continue with the FCV upgrade. at Connection.onMessage (/app/node_modules/mongodb/lib/cmap/connection.js:202:26) at MessageStream. (/app/node_modules/mongodb/lib/cmap/connection.js:61:60) at MessageStream.emit (node:events:513:28) at processIncomingData (/app/node_modules/mongodb/lib/cmap/message_stream.js:124:16) at MessageStream._write (/app/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:391:12) at _write (node:internal/streams/writable:332:10) at MessageStream.Writable.write (node:internal/streams/writable:336:10) at Socket.ondata (node:internal/streams/readable:754:22) at Socket.emit (node:events:513:28) { ok: 0, code: 7369100, codeName: 'Location7369100', [Symbol(errorLabels)]: Set(0) {} } error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. Setting CORS to 'all' is not needed anymore, omitting it is the new way of authorizing every origin. yarn run v1.22.19 $ node ./lib/migrations.js [info] Trying to connect to database at mongodb://mongo_your_spotify_server:27017/your_spotify [info] Connected to database ! [info] Setting feature compatibility version to 7.0 /app/node_modules/mongodb/lib/cmap/connection.js:202 callback(new error_1.MongoServerError(document)); ^ MongoServerError: Once you have upgraded to 7.0, you will not be able to downgrade FCV and binary version without support assistance. Please re-run this command with 'confirm: true' to acknowledge this and continue with the FCV upgrade. at Connection.onMessage (/app/node_modules/mongodb/lib/cmap/connection.js:202:26) at MessageStream. (/app/node_modules/mongodb/lib/cmap/connection.js:61:60) at MessageStream.emit (node:events:513:28) at processIncomingData (/app/node_modules/mongodb/lib/cmap/message_stream.js:124:16) at MessageStream._write (/app/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:391:12) at _write (node:internal/streams/writable:332:10) at MessageStream.Writable.write (node:internal/streams/writable:336:10) at Socket.ondata (node:internal/streams/readable:754:22) at Socket.emit (node:events:513:28) { ok: 0, code: 7369100, codeName: 'Location7369100', [Symbol(errorLabels)]: Set(0) {} } error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

arriej commented 11 months ago

Hi By the looks of it its not YS thats the issue there. the error is the mongo database.

My YS installation is running with mogo 6, you seems to be running 7

MongoServerError: Once you have upgraded to 7.0, you will not be able to downgrade FCV and binary version without support assistance. Please re-run this command with 'confirm: true' to acknowledge this and continue with the FCV upgrade.

is the error. Meaning something is changing in the database structure with version 7. chances it might break something.

you should try instead of latest run 6. image: mongo:6

Yooooomi commented 11 months ago

Hello! Mongo 7 is not officially supported.

jamess60 commented 11 months ago

Good point! Looks like I unofficially got mongo 6 stable in issue #223 - I guess watchtower updated me....

I dont know a huge amount about mongo - do we think its safer to try and fix 7 or try and downgrade to 6? I guess worst case scenario, if the DB breaks, I can just do another GDPR export and re-add the data?

arriej commented 11 months ago

It looks like your data is untouched with the update. I would backup the database files. And run the image for mongodb 6. I guess if it goes wrong you can always import your data again.

jamess60 commented 11 months ago

Went back to 6, YSS restarted ok but I was unable to import the data... Did another GDPR request so looks like im rebuilding - lesson learnt