微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

做写操作时出现mongo error 301

如何解决做写操作时出现mongo error 301

在进行写入操作(保存、删除)时,我的 Nodejs 服务器上发生 Mongo 错误错误代码是 301。

我现在正在使用 TypeORM v0.2.29 和 mongodb v3.6.3。数据库是 AWS DocumentDB。

这是简化的服务器代码

import { createConnections } from 'typeorm';
import { readFileSync } from 'fs';
import ObjectID from 'bson-objectid';

const [mongodb,...] = await createConnections([
  {
    url: 'mongodb://<username>:<password>@docdb~~.amazonaws.com/<database>?replicaset=rs0&readPreference=secondaryPreferred',ssl: true,sslValidate: true,sslCA: [readFileSync('/path/to/ssl/ca')],},{...}
]);

const repository = mongodb.getMongoRepository(SomeEntity);

const entity = new SomeEntity();
entity.id = ObjectID.generate();
entity.someValue = someValue;

await repository.findOne(1); //works fine
const result = await repository.save([entity]); //MongoError occurs

编辑:原来 id 是在实体持久化之前定义的。这可能是个问题吗?

编辑 2:我尝试了开发环境(设置花了相当多的时间。抱歉,迟到了给你信息),我遇到了 Retryable writes not supported 错误。这是完整的错误消息:

Mongo error

但是,无论我在查询字符串上放置 retryWrites=false 选项,都会出现相同的错误

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。