草庐IT

mongodb - mongoimport 在 mac Sierra 10.12.2 上抛出随机 MSpanList_Insert 错误

coder 2023-06-27 原文

我的目标是将 Modulus 的转储导入我本地的 MongoDB。我有一个脚本,它获取所有 JSON 文件并一个一个地导入它们。在我安装 Sierra 之前,该脚本运行良好。这是脚本:

#!/bin/bash
FILES=/Users/username/Documents/ModulusDumps/1-12-17/*
for f in $FILES
do
  filename="${f##*/}"
  basename="${filename%.[^.]*}"
  echo "$basename $filename"
  mongoimport --db meteor --collection $basename --type json --file $f --drop -h 127.0.0.1:3001
done

现在,在安装 Sierra 之后,脚本仍然通过 JSON 文件运行并正常工作,但在导入的随机位置我得到以下信息:

failed MSpanList_Insert 0x7a0100 0x142f1b79b2cc2 0x0 fatal error: MSpanList_Insert

runtime stack: runtime.MSpanList_Insert(0x427610, 0x7a0100) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/mheap.c:692 +0x8f runtime.MHeap_Alloc(0x4275a0, 0x1, 0x10000000002, 0xd9e9) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/mheap.c:240 +0x66 runtime.MCentral_CacheSpan(0x42e118, 0x4ba3e8) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/mcentral.c:85 +0x167 runtime.MCache_Refill(0x4b5960, 0xc200000002, 0x4ba3e8) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/mcache.c:90 +0xa0

goroutine 54 [running]: runtime.switchtoM() /usr/local/Cellar/go/1.4.2/libexec/src/runtime/asm_amd64.s:198 fp=0xc209723878 sp=0xc209723870 runtime.mallocgc(0x5, 0x0, 0x3, 0xc20924dff0) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/malloc.go:147 +0x1bb fp=0xc209723928 sp=0xc209723878 runtime.rawstring(0x5, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/string.go:195 +0x93 fp=0xc209723958 sp=0xc209723928 runtime.slicebytetostring(0xc208275afc, 0x5, 0x49, 0x0, 0x0) /usr/local/Cellar/go/1.4.2/libexec/src/runtime/string.go:69 +0x4b fp=0xc2097239e8 sp=0xc209723958 github.com/mongodb/mongo-tools/common/json.maybeUnquote(0xc208275afc, 0x5, 0x49, 0x0, 0x0, 0xc208106001) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:1170 +0x88 fp=0xc209723a28 sp=0xc2097239e8 github.com/mongodb/mongo-tools/common/json.(*decodeState).objectInterface(0xc208625f00, 0xe) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:1076 +0x14e fp=0xc209723ac0 sp=0xc209723a28 github.com/mongodb/mongo-tools/common/json.(*decodeState).valueInterface(0xc208625f00, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:978 +0x84 fp=0xc209723b10 sp=0xc209723ac0 github.com/mongodb/mongo-tools/common/json.(*decodeState).bsonDInterface(0xc208625f00, 0x0, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:1044 +0x25a fp=0xc209723bf0 sp=0xc209723b10 github.com/mongodb/mongo-tools/common/json.(*decodeState).bsonDocument(0xc208625f00, 0x0, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:358 +0x65 fp=0xc209723c18 sp=0xc209723bf0 github.com/mongodb/mongo-tools/common/json.(*decodeState).unmarshalBsonD(0xc208625f00, 0x0, 0x0, 0x0, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:190 +0x151 fp=0xc209723c70 sp=0xc209723c18 github.com/mongodb/mongo-tools/common/json.UnmarshalBsonD(0xc208275900, 0x245, 0x245, 0x0, 0x0, 0x0, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/common/json/decode.go:107 +0x173 fp=0xc209723ce0 sp=0xc209723c70 github.com/mongodb/mongo-tools/mongoimport.JSONConverter.Convert(0xc208275900, 0x245, 0x245, 0x604e, 0x0, 0x0, 0x0, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/mongoimport/json.go:142 +0x7b fp=0xc209723dd8 sp=0xc209723ce0 github.com/mongodb/mongo-tools/mongoimport.(*JSONConverter).Convert(0xc208ac3b40, 0x0, 0x0, 0x0, 0x0, 0x0) :8 +0xcd fp=0xc209723e28 sp=0xc209723dd8 github.com/mongodb/mongo-tools/mongoimport.(*importWorker).processDocuments(0xc2080ac040, 0xc2080ac000, 0x0, 0x0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/mongoimport/common.go:380 +0x166 fp=0xc209723f68 sp=0xc209723e28 github.com/mongodb/mongo-tools/mongoimport.func·002(0xc208086120, 0xc2080c6060, 0xc2080d85a0) /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/mongoimport/common.go:268 +0xa7 fp=0xc209723fc8 sp=0xc209723f68 runtime.goexit() /usr/local/Cellar/go/1.4.2/libexec/src/runtime/asm_amd64.s:2232 +0x1 fp=0xc209723fd0 sp=0xc209723fc8 created by github.com/mongodb/mongo-tools/mongoimport.streamDocuments /private/tmp/mongodb20150321-60760-11xdj8i/mongodb-src-r3.0.1/src/github.com/mongodb/mongo-tools/.gopath/src/github.com/mongodb/mongo-tools/mongoimport/common.go:275 +0x490

加上一些额外的输出... 找了一整天,发现这个错误在Sierra中并不新鲜,与Go语言有关。关于 1.4 版本不受支持或不支持 Sierra 的问题。 我已经安装了 Go 1.7 并对其进行了测试,但无济于事。在 mongoimport 期间随机位置出现相同的错误。 任何帮助将不胜感激!!

最佳答案

在清理数据并在 macOS Sierra 10.12.6 上使用新的 mongo 版本 3.7.4 再次运行“mongoimport”后,我解决了类似的问题。

解决问题前:

我使用的是 mongo 版本 3.0.7(与 macOS Sierra 10.12.6)。今天,当我尝试导入一个大的 JSON 文件时,我发现了类似的问题。这是示例命令和错误:

./mongoimport --host localhost --port 27017 --db mydb --collection access --type json  --file /Users/data.json

2017-08-31T08:08:29.376+0530    connected to: localhost:27017
failed MSpanList_Insert 0x1341998 0x2a98efb0db8fa 0x0
fatal error: MSpanList_Insert

runtime stack:
runtime.MSpanList_Insert(0x433940, 0x1341998)
    /usr/local/go/src/runtime/mheap.c:692 +0x8f
runtime.MHeap_Alloc(0x433660, 0x1, 0x10000000009, 0xd9e9)
    /usr/local/go/src/runtime/mheap.c:240 +0x66
runtime.MCentral_CacheSpan(0x43a9b8, 0xc20c2e9c88)
    /usr/local/go/src/runtime/mcentral.c:85 +0x167
runtime.MCache_Refill(0x600960, 0x9, 0x8013417f8)
    /usr/local/go/src/runtime/mcache.c:90 +0xa0

goroutine 20 [running]:
runtime.switchtoM()
    /usr/local/go/src/runtime/asm_amd64.s:198 fp=0xc20c2e9368 sp=0xc20c2e9360
runtime.mallocgc(0x80, 0x0, 0x3, 0xc208531718)
    /usr/local/go/src/runtime/malloc.go:178 +0x849 fp=0xc20c2e9418 sp=0xc20c2e9368
runtime.rawmem(0x80, 0x80)
    /usr/local/go/src/runtime/malloc.go:371 +0x39 fp=0xc20c2e9440 sp=0xc20c2e9418

./mongoimport --version
mongoimport version: 3.0.7
git version: 134c548992e8248c7a7c53777a652cbb2490ab6c

它是如何修复的: 我删除了/data/db/* 下的 mongo 数据。根据您的配置,这将是其他路径。

sudo rm -rf /data/db/*

然后我从 https://www.mongodb.com/dr/fastdl.mongodb.org/osx/mongodb-osx-ssl-x86_64-3.4.7.tgz/download 下载并安装了新的 mongo 版本 3.7.4|

drwxr-xr-x   8 root  root  272 Aug 31 07:38 mongodb-osx-x86_64-3.0.7
drwxr-xr-x   7 root  root  238 Aug 31 07:39 mongodb-osx-x86_64-3.4.7
lrwxr-xr-x   1 root  root   24 Aug 31 07:39 mongo -> mongodb-osx-x86_64-3.4.7

检查mongoimport版本

./mongoimport  --version
mongoimport version: r3.4.7
git version: cf38c1b8a0a8dca4a11737581beafef4fe120bcd
Go version: go1.7
   os: darwin
   arch: amd64
   compiler: gc
OpenSSL version: OpenSSL 0.9.8zh 14 Jan 2016

我使用“mongoimport”3.4.7 成功导入了大文件(以 GB 为单位)。

注意:如果你因为任何原因不能像我一样清理数据。您可以尝试单独安装新的 mongo 并尝试使用新版本的“mongoimport”。

在清理数据后,我还尝试使用旧版本的“mongoimport”,但它没有用。使用最新的“mongoimport”帮助解决了我的问题。

希望对您有所帮助。

关于mongodb - mongoimport 在 mac Sierra 10.12.2 上抛出随机 MSpanList_Insert 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41644489/

有关mongodb - mongoimport 在 mac Sierra 10.12.2 上抛出随机 MSpanList_Insert 错误的更多相关文章

  1. 由于 libgmp.10.dylib 的问题,Ruby 2.2.0 无法运行 - 2

    我刚刚安装了带有RVM的Ruby2.2.0,并尝试使用它得到了这个:$rvmuse2.2.0--defaultUsing/Users/brandon/.rvm/gems/ruby-2.2.0dyld:Librarynotloaded:/usr/local/lib/libgmp.10.dylibReferencedfrom:/Users/brandon/.rvm/rubies/ruby-2.2.0/bin/rubyReason:Incompatiblelibraryversion:rubyrequiresversion13.0.0orlater,butlibgmp.10.dylibpro

  2. ruby - ri 有空文件 – Ubuntu 11.10, Ruby 1.9 - 2

    我正在运行Ubuntu11.10并像这样安装Ruby1.9:$sudoapt-getinstallruby1.9rubygems一切都运行良好,但ri似乎有空文档。ri告诉我文档是空的,我必须安装它们。我执行此操作是因为我读到它会有所帮助:$rdoc--all--ri现在,当我尝试打开任何文档时:$riArrayNothingknownaboutArray我搜索的其他所有内容都是一样的。 最佳答案 这个呢?apt-getinstallri1.8编辑或者试试这个:(非rvm)geminstallrdocrdoc-datardoc-da

  3. ruby-on-rails - gem install rmagick -v 2.13.1 错误 Failed to build gem native extension on Mac OS 10.9.1 - 2

    我已经通过提供MagickWand.h的路径尝试了一切,我安装了命令工具。谁能帮帮我?$geminstallrmagick-v2.13.1Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingrmagick:ERROR:Failedtobuildgemnativeextension./Users/ghazanfarali/.rvm/rubies/ruby-1.8.7-p357/bin/rubyextconf.rbcheckingforRubyversion>=1.8.5...yescheckingfor/

  4. ruby - 安装 tiny_tds 在 mac os 10.10.5 上出现错误 - 2

    我正在使用macos,我想使用ruby​​驱动程序连接到sqlserver。我想使用tiny_tds,但它给出了缺少free_tds的错误,但它已经安装了。怎么能过这个?~brewinstallfreetdsWarning:freetds-0.91.112alreadyinstalled~sudogeminstalltiny_tdsBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtiny_tds:ERROR:Failedtobuildgemnativeextension.完整日志如下:/System

  5. ruby - rails 3.2.2(或 3.2.1)+ Postgresql 9.1.3 + Ubuntu 11.10 连接错误 - 2

    我正在使用PostgreSQL9.1.3(x86_64-pc-linux-gnu上的PostgreSQL9.1.3,由gcc-4.6.real(Ubuntu/Linaro4.6.1-9ubuntu3)4.6.1,64位编译)和在ubuntu11.10上运行3.2.2或3.2.1。现在,我可以使用以下命令连接PostgreSQLsupostgres输入密码我可以看到postgres=#我将以下详细信息放在我的config/database.yml中并执行“railsdb”,它工作正常。开发:adapter:postgresqlencoding:utf8reconnect:falsedat

  6. ruby-on-rails - 在 osx 10.9.3 上使用 RVM 安装 ruby​​-1.9.3-p547 时出错 - 2

    如何解决这个错误:$rvminstall1.9.3Searchingforbinaryrubies,thismighttakesometime.Nobinaryrubiesavailablefor:osx/10.9/x86_64/ruby-1.9.3-p547.Continuingwithcompilation.Pleaseread'rvmhelpmount'togetmoreinformationonbinaryrubies.Checkingrequirementsforosx.Certificatesin'/usr/local/etc/openssl/cert.pem'arealr

  7. 深度学习12. CNN经典网络 VGG16 - 2

    深度学习12.CNN经典网络VGG16一、简介1.VGG来源2.VGG分类3.不同模型的参数数量4.3x3卷积核的好处5.关于学习率调度6.批归一化二、VGG16层分析1.层划分2.参数展开过程图解3.参数传递示例4.VGG16各层参数数量三、代码分析1.VGG16模型定义2.训练3.测试一、简介1.VGG来源VGG(VisualGeometryGroup)是一个视觉几何组在2014年提出的深度卷积神经网络架构。VGG在2014年ImageNet图像分类竞赛亚军,定位竞赛冠军;VGG网络采用连续的小卷积核(3x3)和池化层构建深度神经网络,网络深度可以达到16层或19层,其中VGG16和VGG

  8. u盘安装系统(win10为例) - 2

    下载微PE工具箱进入官网下载微PE工具箱-下载 安装好后,打开微PE工具箱客户端,选择安装PE到U盘 PE壁纸可选择自己喜欢的壁纸,勾选上包含DOS工具箱,个性化盘符图标 下载原版系统进入网站下载镜像NEXT,ITELLYOU如果没有账号,注册一下就好进入选择开始使用选择win10 这里我们选择消费者版,用迅雷把BT种子下载下来 下面的两个盘符,是PE工具箱安装进U盘后,分成的盘符,注意EFI的盘符,这里面不能删东西,也不能添东西,另一个盘符可以当做正常的U盘空间使用,我们现在需要把下载下来的景象文件复制到正常的U盘空间中去 这个时候我们的系统U盘就只做好了 安装系统我们将U盘插入电脑,开机,

  9. ruby-on-rails - OSX 10.7.5 - Ruby on Rails LoadError : Could not open library 'sodium' : dlopen(sodium, 5) - 2

    输入rakedb:create后我得到:LoadError:Couldnotopenlibrary'sodium':dlopen(sodium,5):imagenotfound.Couldnotopenlibrary'libsodium.dylib':dlopen(libsodium.dylib,5):imagenotfound这里还有一些输出。/Users/Mao/.rvm/gems/ruby-2.0.0-p451/gems/ffi-1.9.3/lib/ffi/library.rb:133:in`blockinffi_lib'/Users/Mao/.rvm/gems/ruby-2.0

  10. ruby-on-rails - 如何使用 Xcode 4.5.1 在 OSX Lion 10.8.2 上编译 EventMachine gem - 2

    我找遍了所有我能找到的地方,但似乎找不到解决这个问题的办法。我在Lion10.8.2上使用Xcode4.5.1,并尝试为Rails项目运行bundle,但它一直卡在这上面。我正在为Heroku使用Thingem。Bolanos@Jeremys-Mac-mini⦿-1.9.3fishfarm$sudogeminstalleventmachinePassword:Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingeventmachine:ERROR:Failedtobuildgemnativeextens

随机推荐