2012-12-20 43 views
0

我有一個集合('停止'),其中包含從CSV導入的14000條記錄。包括在每一個記錄是一些地理空間數據,我已經轉換成一個陣列,所以每個基本上是這樣的:在MongoDB中創建地理空間索引時出錯

{ 
    _id: ..., 
    // other fields 
    "loc": [ 
    153.019073, 
    -27.467834 
    ] 
} 

當我運行db.stops.ensureIndex({ loc: '2d' })它給人的錯誤:

location object expected, location array not in correct format

我猜在其中一個字段中出現錯誤,但我無法弄清楚哪一個字段是錯誤的。有任何想法嗎?

回答

1

問題是,有一個記錄沒有正確導入(可能是文件末尾的空行)。

爲了找到它(後來刪除),我用了$where操作:

db.stops.find({ $where: 'typeof this.loc[0] != "number"' }) 
相關問題