v4.0.0 Upgrade Support
-
Just upgraded to 4.0.5 from 3.x (I think it was the latest 3.12.4)
The following error occurred
4. Updating NodeBB data store schema... Parsing upgrade scripts... OK | 6 script(s) found, 145 skipped → [2024/11/25] Add website and location as custom profile fields... OK (0.01 seconds) → [2024/12/2] Add setting for keeping original image after resize... OK (0.00 seconds) → [2024/2/22] Setting up default configs/privileges re: ActivityPub... OK (0.30 seconds) → [2024/11/28] Regenerate user slugs for users whose usernames contained periods... [##############] (25/25) 100% OK (0.01 seconds) → [2025/1/27] Changing integer search indices to string... [##############] (3659/3659) 100% OK (4.21 seconds) → [2025/2/18] Add timestamp field to searchtopic searchpost collections...Error occurred Error occurred during upgrade: MongoServerError: Projection cannot have a mix of inclusion and exclusion. at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26) at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29) at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16) at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20) at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16) at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26) at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27) at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13) 2025-02-27T01:21:41.642Z [4567/150701] - error: uncaughtException: Projection cannot have a mix of inclusion and exclusion. MongoServerError: Projection cannot have a mix of inclusion and exclusion. at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26) at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29) at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16) at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20) at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16) at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26) at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27) at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13) {"date":"Thu Feb 27 2025 12:21:41 GMT+1100 (Australian Eastern Daylight Time)","error":{"code":2,"codeName":"BadValue","errorResponse":{"code":2,"codeName":"BadValue","errmsg":"Projection cannot have a mix of inclusion and exclusion.","ok":0},"ok":0},"exception":true,"os":{"loadavg":[1.08,0.39,0.18],"uptime":1031967.39},"process":{"argv":["/usr/bin/node","/home/nodebb/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb/nodebb","execPath":"/usr/bin/node","gid":1001,"memoryUsage":{"arrayBuffers":19486426,"external":24049422,"heapTotal":104038400,"heapUsed":70664672,"rss":197357568},"pid":150701,"uid":1001,"version":"v22.14.0"},"stack":"MongoServerError: Projection cannot have a mix of inclusion and exclusion.\n at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26)\n at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29)\n at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16)\n at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20)\n at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16)\n at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26)\n at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27)\n at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13)","trace":[{"column":27,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js","function":"Connection.sendCommand","line":296,"method":"sendCommand","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":105,"method":"processTicksAndRejections","native":false},{"column":26,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js","function":"async Connection.command","line":323,"method":"command","native":false},{"column":29,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js","function":"async Server.command","line":170,"method":"command","native":false},{"column":16,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js","function":"async FindOperation.execute","line":36,"method":"execute","native":false},{"column":20,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js","function":"async tryOperation","line":203,"method":null,"native":false},{"column":16,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js","function":"async executeOperation","line":73,"method":null,"native":false},{"column":26,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js","function":"async FindCursor._initialize","line":60,"method":"_initialize","native":false},{"column":27,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js","function":"async FindCursor.cursorInit","line":607,"method":"cursorInit","native":false},{"column":13,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js","function":"async FindCursor.fetchBatch","line":641,"method":"fetchBatch","native":false}]}
I know nothing about mongodb so have no clue to the cause of this issue.
-
@jaromanda please install nodebb-plugin-dbsearch@6.2.13 and try again. Let me know if the upgrade script works.
-
@baris No, that made no difference