[solved] Meteor 1.9.3+ and mongo document-level locking

After upgrading from 1.9 to 1.10.1, whenever I use the login, logout, or createUser methods, I get the following error:

I20200406-15:48:52.252(-4)? ===== message ===== Exception while invoking method 'login'
I20200406-15:48:52.252(-4)? ===== stack ===== MongoError: Transaction numbers are only allowed on storage engines that support document-level locking
I20200406-15:48:52.252(-4)?     at Function.create (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/error.js:43:12)
I20200406-15:48:52.253(-4)?     at toError (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/utils.js:149:22)
I20200406-15:48:52.253(-4)?     at /Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/operations/common_functions.js:376:39
I20200406-15:48:52.253(-4)?     at handler (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/topologies/mongos.js:913:22)
I20200406-15:48:52.253(-4)?     at /Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/connection/pool.js:404:18
I20200406-15:48:52.253(-4)?     at processTicksAndRejections (internal/process/task_queues.js:79:11)
I20200406-15:48:52.253(-4)? 'MongoError: Transaction numbers are only allowed on storage engines that support document-level locking\n' +
I20200406-15:48:52.253(-4)?   '    at Function.create (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/error.js:43:12)\n' +
I20200406-15:48:52.254(-4)?   '    at toError (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/utils.js:149:22)\n' +
I20200406-15:48:52.254(-4)?   '    at /Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/operations/common_functions.js:376:39\n' +
I20200406-15:48:52.254(-4)?   '    at handler (/Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/topologies/mongos.js:913:22)\n' +
I20200406-15:48:52.254(-4)?   '    at /Users/Joe/.meteor/packages/npm-mongo/.3.7.0.1yux8t1.vzvw++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/core/connection/pool.js:404:18\n' +
I20200406-15:48:52.254(-4)?   '    at processTicksAndRejections (internal/process/task_queues.js:79:11)'
I20200406-15:48:52.254(-4)? 

After testing previous meteor releases, I’ve found this error occurs starting with 1.9.3. Are we now required to use Mongo storage engines that support document-level locking? My db is hosted by compose, which by default doesn’t support this unless you upgrade to the more expensive WiredTiger engine.

Hey @hanley, adding &retryWrites=false at the end of the connection string fix the issue.

Worked. Thanks @cmboros !