Meteor 0.9.0 ทำลายฐานข้อมูล Mongo ของฉันเหรอ?

ฉันเพิ่งอัปเดต Meteor และพบข้อบกพร่องที่น่ารำคาญหลายประการที่ทำให้การทำงานในโครงการของฉันเป็นเรื่องยาก เช่น เมื่อฉันวิ่ง

meteor

มันให้สิ่งนี้กับฉัน:

=> Started proxy.
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Can't start Mongo server.
MongoDB had an unspecified uncaught exception.
 This can be caused by MongoDB being unable to write to a local database.
Check that you have permissions to write to .meteor/local. MongoDB does
not support filesystems like NFS that do not allow file locking.

ฉันกำลังเรียกใช้สิ่งนี้ในฐานะรูทบนเดเบียน ดังนั้นจึงไม่ควรเป็นข้อผิดพลาดในการอนุญาต ... แต่ฉันยังใหม่กับ Linux ดังนั้นบางทีนั่นอาจเป็นอย่างนั้น....

ฉันวิ่ง:

meteor reset

และมันจะรันโปรแกรมของฉันแต่ทันทีที่ฉันรัน

meteor mongo

เพื่อเข้าถึงฐานข้อมูลของฉัน แต่แล้วฉันก็ได้รับสิ่งนี้:

=> Exited from signal : SIGKILL
Killed

และมันทำให้โปรเจ็กต์ของฉันพัง และฉันได้รับรหัสทางออก mongo ที่ไม่คาดคิด 100 อีกครั้ง

สิ่งนี้จะไม่เกิดขึ้นจนกว่า Meteor 0.9.0 จะเป็นข้อบกพร่อง หรือเป็นข้อผิดพลาดในการอนุญาต Linux

ขอบคุณ!


person Ian Wise    schedule 29.08.2014    source แหล่งที่มา
comment
คุณได้ตรวจสอบการอนุญาตบน '.meteor/local` แล้วหรือยัง? สภาพแวดล้อม Debian ของคุณทำงานภายใน VM (เช่น VirtualBox หรือ VMware) หรือไม่   -  person Stennie    schedule 29.08.2014
comment
คุณเคยเริ่มใช้ meeor ด้วย sudo มาก่อน แต่ตอนนี้ไม่ได้ใช้งานแล้วใช่หรือไม่ เปลี่ยนการอนุญาตในโฟลเดอร์นั้นเพื่อที่คุณจะได้ไม่ต้องใช้ sudo   -  person Andrew Mao    schedule 29.08.2014
comment
ฉันอยู่ในรูทดังนั้นฉันจึงไม่จำเป็นต้อง sudo คำสั่งของฉัน และใช่ มันอยู่ใน VM (Oracle VirtualBox)   -  person Ian Wise    schedule 30.08.2014


คำตอบ (4)


ฉันมีปัญหานี้ใน Codio.io VM ของคุณอาจมีพื้นที่ดิสก์ไม่เพียงพอ VM ฟรีมีพื้นที่จำกัด cod.io ให้คุณ 1GB Meteor มีขนาดเพิ่มขึ้นด้วยการอัปเดต 0.9.0 และ 0.9.1 (ฉันคิดว่ามันเป็น ~300mb) ซึ่งเมื่อรวมกับ mongoDB ที่ต้องการ 450mb ก็ไม่เหลือพื้นที่มากนัก เพื่อดูว่าโครงการของคุณใช้พื้นที่เท่าใด:

du -h

ซึ่งจะแสดงรายการขนาดโปรเจ็กต์ของคุณและเพิ่ม 450mb สำหรับ monogdb และดูว่าเกินพื้นที่ที่จัดสรรให้กับ VM ของคุณหรือไม่

เฉพาะสำหรับ cod.io คุณสามารถเรียกใช้:

df -h | grep xvdc | head -1 | awk '{print "free: " $4 " of " $2 ". Used: " $3}'

เพื่อดูว่าคุณเหลือพื้นที่ว่างเท่าใด

เพื่อแก้ไขปัญหาของฉัน ฉันย้าย mongoDB ไปที่ mongoHQ(compose.io) และตั้งค่า AWS sandbox DB (ฟรี!!!!!)

จากนั้นเมื่อคุณเริ่มดาวตก คุณจะชี้ไปที่มันด้วย:

MONGO_URL=mongodb://user:[email protected]:xxxxx/xxxx meteor
person lucidpaper    schedule 30.08.2014
comment
แต่ VM ของฉันไม่ฟรี มันอยู่ในคอมพิวเตอร์ของฉันเอง พื้นที่ยังคงเป็นปัญหาอยู่หรือไม่ - person Ian Wise; 31.08.2014

ฉันประสบปัญหาเดียวกันในการพยายามเริ่มแอป meteor และเซิร์ฟเวอร์ mongodb กำลังถูกยกเลิกในลักษณะที่ไม่คาดคิด โดยทั่วไปแล้ว linux เสมือนอย่างที่คุณกล่าวถึงนั้นมาโดยไม่มีพาร์ติชัน swap (ตรวจสอบในไฟล์ /etc/fstab) ดังนั้นหากคุณมีหน่วยความจำไม่เพียงพอที่จะจัดสรรเซิร์ฟเวอร์ MongoDB ไม่สามารถเริ่มแอป meteor ได้ คุณสามารถสร้างสลับพาร์ติชัน หรืออัปเกรดหน่วยความจำที่มีให้สำหรับเครื่องเสมือนของคุณได้ นอกจากนี้ คุณยังสามารถจำลองพาร์ติชัน swap ผ่าน swapspace

sudo apt-get install swapspace

หลังจากนั้นฉันก็สามารถเริ่มแอป meteor ได้... อดทนหน่อยนะ เพราะหน่วยความจำสลับไม่ได้เร็วเท่ากับ RAM

person mario ruiz    schedule 28.05.2015

คุณต้องลบไฟล์ mongodb.lock ที่พบในโฟลเดอร์ .meteor/local/db

person Shiraj    schedule 29.08.2014
comment
ฉันจะลบมันทิ้งเลยเหรอ? มันจะเปลี่ยนรหัสของฉันหรือ Mongo.db เลยหรือไม่ - person Ian Wise; 30.08.2014
comment
ลบไปแล้วและฉันยังคงได้รับปัญหาเดิม... ทำไมฉันถึงได้รับ SIGKILL ต่อไป? - person Ian Wise; 30.08.2014

คุณใช้อุกกาบาตหรือไม่? บางทีปัญหาอาจเกิดจากแพ็คเกจบางอย่าง

เมื่อคุณอัปเดตเป็น 0.9.0 หากคุณใช้ Meteorite คุณจะได้รับแจ้งให้อัปเกรดโครงการของคุณโดยใช้ mrt migrate-app และบรรยากาศ js.com ได้รับการอัปเดตให้ชี้ไปที่เซิร์ฟเวอร์แพ็คเกจอย่างเป็นทางการ – ลองดูสิ!

person skozz    schedule 01.09.2014