在Meteor 1.7.0.4中升级MongoDB驱动程序

时间:2018-08-21 15:44:51

标签: node.js mongodb meteor mongodb-query

在Meteor 1.7.0.x中,默认的MongoDB驱动程序版本为3.0.7

我需要使用MongoDB驱动程序版本3.1,因为在3.1中已修复了可重试写入的多文档更新(https://jira.mongodb.org/browse/NODE-1513

如何在Meteor 1.7.0.x中使用3.1版驱动程序?

1 个答案:

答案 0 :(得分:0)

以下是变通办法指南,不应在生产应用中使用!

请不要将标记为稳定的最新mongodb驱动程序版本仍为3.0.11(2018/09)。因此,您应该假定MDG在声明新版本稳定之前不会更新mongo驱动程序。

使用任何最新版本都可能导致未知/意外的行为,尤其是在生产环境中。继续,后果自负。

继续

  • 在项目目录中创建一个packages文件夹
$ cd ~/path/to/your-project
$ mkdir -p packages
  • 克隆或下载meteor from Github(到~/path/to/meteor)。

  • 将核心包从流星复制到您的包文件夹

$ cd ~/path/to/meteor/packages/
$ cp -r npm-mongo ~/path/to/your-project/packages/
  • 将文件package.js编辑到以下latest版本(当前为3.1.4):
// This has been moved out of the `mongo` package so it can be used by the tool
// via isopacket, without having to also load ddp-server.

Package.describe({
  summary: "Wrapper around the mongo npm package",
  version: "3.1.4",
  documentation: null
});

Npm.depends({
  mongodb: "3.1.4"
});

Package.onUse(function (api) {
  api.addFiles("wrapper.js", "server");
  api.export([
    "NpmModuleMongodb",
    "NpmModuleMongodbVersion",
  ], "server");
});
  • 运行您的应用程序,两手交叉。

替代步骤

  • 您可以从npm-mongo中创建一个名为packages/的新文件夹,然后从here复制文件,然后编辑{{1} },按照上面的指南。