egg icon indicating copy to clipboard operation
egg copied to clipboard

egg-mongoose bulkWrite ordered设置为 false无效?

Open dythbj opened this issue 5 years ago • 6 comments

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

dythbj avatar Jun 16 '20 07:06 dythbj

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看

ChangedenCZD avatar Jun 16 '20 07:06 ChangedenCZD

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看 还是不行,还是一条出错全部不执行,而且出现错误后,回调函数里面result是undefined

dythbj avatar Jun 16 '20 07:06 dythbj

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看 还是不行,还是一条出错全部不执行,而且出现错误后,回调函数里面result是undefined

进入 node_modules/egg-mongoose里面,安装一下[email protected]

ChangedenCZD avatar Jun 16 '20 08:06 ChangedenCZD

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看 还是不行,还是一条出错全部不执行,而且出现错误后,回调函数里面result是undefined

进入 node_modules/egg-mongoose里面,安装一下[email protected]

整个环境直接垮了,Scheme什么的都报错了。。。

dythbj avatar Jun 16 '20 08:06 dythbj

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看 还是不行,还是一条出错全部不执行,而且出现错误后,回调函数里面result是undefined

进入 node_modules/egg-mongoose里面,安装一下[email protected]

整个环境直接垮了,Scheme什么的都报错了。。。

尴尬,egg-mongoose要兼容最新版了。你试试单独跑mongoose是否有问题

ChangedenCZD avatar Jun 16 '20 08:06 ChangedenCZD

What happens?

[email protected] "mongoose": "^5.4.20" 执行bulkWrite时设置了ordered为false,但是当出现错误时,bulkWrite的集合操作全部未执行

How To Reproduce

Steps to reproduce the behavior:

  1. ops = [{ 'updateOne': { 'filter': { 'propertie': value1 }, 'update': updateData1, 'upsert': true } },{ 'updateOne': { 'filter': { 'propertie': value2 }, 'update': updateData2, 'upsert': true } }...] 2.this.ctx.model.XXXX.bulkWrite(ops, {ordered: false}, (error, result) => {}) 3.ops第一项报错,后续全部不执行

[email protected]看看 还是不行,还是一条出错全部不执行,而且出现错误后,回调函数里面result是undefined

进入 node_modules/egg-mongoose里面,安装一下[email protected]

整个环境直接垮了,Scheme什么的都报错了。。。

刚刚看了一下,"egg-mongoose": "^3.1.3",node_modules里面的mongoose就是5.9.19 image

dythbj avatar Jun 16 '20 08:06 dythbj