小编Sim*_*oyw的帖子

Mongorestore:createIndex 错误:v:2 索引键模式中的值不能是对象类型。只允许数字 > 0、数字 < 0 和字符串

mongorestore使用大型 MongoDB 数据库运行命令时收到以下错误。

完成备份的机器:

db version v4.2.0
git version: a4b751dcf51dd249c5865812b390cfd1c0129c30
OpenSSL version: OpenSSL 1.1.1  11 Sep 2018
allocator: tcmalloc
modules: none
build environment:
    distmod: ubuntu1804
    distarch: x86_64
    target_arch: x86_64
Run Code Online (Sandbox Code Playgroud)

本地机器版本(我执行的地方mongorestore

db version v4.0.10
git version: c389e7f69f637f7a1ac3cc9fae843b635f20b766
allocator: system
modules: none
build environment:
    distarch: x86_64
    target_arch: x86_64
Run Code Online (Sandbox Code Playgroud)

失败:prod.DeviceState:为 prod.DeviceState 创建索引时出错:createIndex 错误:v:2 索引键模式中的值不能是对象类型。仅允许数字 > 0、数字 < 0 和字符串。

任何帮助解决这个问题?

谢谢

linux macos mongodb mongorestore mongodump

7
推荐指数
1
解决办法
4916
查看次数

如何让客户端下载一个动态生成的非常大的文件

我有一个导出函数,它读取整个数据库并创建一个包含所有记录的.xls文件.然后将文件发送到客户端.

当然,导出完整数据库的时间需要很多时间,并且请求很快就会以超时错误结束.

处理这种情况的最佳解决方案是什么?

我听说过一些关于使用Redis建立队列的事情,但这需要两个请求:一个用于启动将生成文件的作业,另一个用于下载生成的文件.

这是否可以通过客户的单一请求进行?

queue jobs redis node.js kue

4
推荐指数
1
解决办法
3474
查看次数

如何映射数组并生成对象而不是数组?

我想这个代码:

var arr = [
    { key: 'foo', val: 'bar' },
    { key: 'hello', val: 'world' }
];

var result = arr.map((i) => ([i.key]: i.val)); //something like this

console.log(result);
Run Code Online (Sandbox Code Playgroud)

返回:

{foo: 'bar', hello: 'world'}
Run Code Online (Sandbox Code Playgroud)

这在ECMA6中是否可行?

javascript arrays object ecmascript-6

1
推荐指数
1
解决办法
56
查看次数