v4.0.0 Upgrade Support
-
If you have problems upgrading to v4.0.0, you can ask for help here.
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.
-
If you have problems upgrading to v4.0.0, you can ask for help here.
@jaromanda please install nodebb-plugin-dbsearch@6.2.13 and try again. Let me know if the upgrade script works.
-
@jaromanda please install nodebb-plugin-dbsearch@6.2.13 and try again. Let me know if the upgrade script works.
-
If you have problems upgrading to v4.0.0, you can ask for help here.
upgrade from v1.12.2, but failed when v3.x to v4.x
4. Updating NodeBB data store schema... Parsing upgrade scripts... OK | 4 script(s) found, 147 skipped → [2024/2/22] Setting up default configs/privileges re: ActivityPub...Error occurred Error occurred during upgrade: Error: [[error:invalid-data]] at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9) at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11) at generateHandle (/home/nodebb/src/categories/create.js:154:26) at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11) at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36 at Array.map () at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4) at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) 2025-04-14T17:03:51.767Z [4567,4568,4569,4570/27865] - error: uncaughtException: [[error:invalid-data]] Error: [[error:invalid-data]] at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9) at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11) at generateHandle (/home/nodebb/src/categories/create.js:154:26) at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11) at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36 at Array.map () at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4) at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) {"date":"Tue Apr 15 2025 01:03:51 GMT+0800 (China Standard Time)","error":{},"exception":true,"os":{"loadavg":[0.5,0.2,0.24],"uptime":21399.08},"process":{"argv":["/root/.nvm/versions/node/v20.19.0/bin/node","/home/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb","execPath":"/root/.nvm/versions/node/v20.19.0/bin/node","gid":0,"memoryUsage":{"arrayBuffers":19370345,"external":23881947,"heapTotal":91189248,"heapUsed":62438072,"rss":182493184},"pid":27865,"uid":0,"version":"v20.19.0"},"stack":"Error: [[error:invalid-data]]\n at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)\n at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)\n at generateHandle (/home/nodebb/src/categories/create.js:154:26)\n at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)\n at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36\n at Array.map ()\n at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)\n at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)","trace":[{"column":9,"file":"/home/nodebb/src/meta/index.js","function":"Meta.slugTaken","line":34,"method":"slugTaken","native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as slugTaken]","line":46,"method":"wrapperCallback [as slugTaken]","native":false},{"column":26,"file":"/home/nodebb/src/categories/create.js","function":"generateHandle","line":154,"method":null,"native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as generateHandle]","line":46,"method":"wrapperCallback [as generateHandle]","native":false},{"column":36,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":null,"line":25,"method":null,"native":false},{"column":null,"file":null,"function":"Array.map","line":null,"method":"map","native":false},{"column":42,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":"Object.method","line":23,"method":"method","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":95,"method":"processTicksAndRejections","native":false},{"column":4,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.process","line":161,"method":"process","native":false},{"column":2,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.run","line":110,"method":"run","native":false}]}
-
upgrade from v1.12.2, but failed when v3.x to v4.x
4. Updating NodeBB data store schema... Parsing upgrade scripts... OK | 4 script(s) found, 147 skipped → [2024/2/22] Setting up default configs/privileges re: ActivityPub...Error occurred Error occurred during upgrade: Error: [[error:invalid-data]] at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9) at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11) at generateHandle (/home/nodebb/src/categories/create.js:154:26) at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11) at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36 at Array.map () at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4) at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) 2025-04-14T17:03:51.767Z [4567,4568,4569,4570/27865] - error: uncaughtException: [[error:invalid-data]] Error: [[error:invalid-data]] at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9) at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11) at generateHandle (/home/nodebb/src/categories/create.js:154:26) at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11) at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36 at Array.map () at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4) at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) {"date":"Tue Apr 15 2025 01:03:51 GMT+0800 (China Standard Time)","error":{},"exception":true,"os":{"loadavg":[0.5,0.2,0.24],"uptime":21399.08},"process":{"argv":["/root/.nvm/versions/node/v20.19.0/bin/node","/home/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb","execPath":"/root/.nvm/versions/node/v20.19.0/bin/node","gid":0,"memoryUsage":{"arrayBuffers":19370345,"external":23881947,"heapTotal":91189248,"heapUsed":62438072,"rss":182493184},"pid":27865,"uid":0,"version":"v20.19.0"},"stack":"Error: [[error:invalid-data]]\n at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)\n at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)\n at generateHandle (/home/nodebb/src/categories/create.js:154:26)\n at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)\n at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36\n at Array.map ()\n at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)\n at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)","trace":[{"column":9,"file":"/home/nodebb/src/meta/index.js","function":"Meta.slugTaken","line":34,"method":"slugTaken","native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as slugTaken]","line":46,"method":"wrapperCallback [as slugTaken]","native":false},{"column":26,"file":"/home/nodebb/src/categories/create.js","function":"generateHandle","line":154,"method":null,"native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as generateHandle]","line":46,"method":"wrapperCallback [as generateHandle]","native":false},{"column":36,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":null,"line":25,"method":null,"native":false},{"column":null,"file":null,"function":"Array.map","line":null,"method":"map","native":false},{"column":42,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":"Object.method","line":23,"method":"method","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":95,"method":"processTicksAndRejections","native":false},{"column":4,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.process","line":161,"method":"process","native":false},{"column":2,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.run","line":110,"method":"run","native":false}]}
@Dk please try with the latest commit on
master