0

ラズベリーパイのmongodbに問題があります。https://github.com/RickP/mongopiからバージョン 2.1.1 を実行しています

1.937問題は、データベースに値を挿入できないことです。mongoシェルからの出力は 次のとおりです。

> db.sensor.drop()
true

最初にコレクションをきれいにするので、すべてがきれいです

> db.sensor.insert({'sensor_id': 3, 'value': 1.937})
> db.sensor.findOne()
{
    "_id" : ObjectId("5134fb85e59d6e0efe256a79"),
    "sensor_id" : 3,
    "value" : -2.960244045726579e-47
}

ご覧のとおり、1.937 という値がデータベースに間違って格納されています...これは本当に奇妙です。

次のコマンドを実行すると:

> db.sensor.insert({'sensor_id': 3, 'value': 2})

それから私は得る

> db.sensor.find()
{ "_id" : ObjectId("5134fb85e59d6e0efe256a79"), "sensor_id" : 3, "value" : -2.960244045726579e-47 }
{ "_id" : ObjectId("5134fcece59d6e0efe256a7a"), "sensor_id" : 3, "value" : 2 }

ご覧のとおり、2 番目のエントリは適切です... 問題は浮動小数点値のみです。

なぜ?

ありがとう

4

1 に答える 1

0

MongoDB 2.1.1 のローカル インスタンスで再現できない

MongoDB shell version: 2.1.1
connecting to: test
> db.version()
2.1.1
> db.xx.drop()
false
> db.xx.insert({'sensor_id': 3, 'value': 1.937})
> db.xx.insert({'sensor_id': 3, 'value': 3})
> db.xx.find()
{ "_id" : ObjectId("51586b66cff42dd9c4bc608c"), "sensor_id" : 3, "value" : 1.937 }
{ "_id" : ObjectId("51586b6ccff42dd9c4bc608d"), "sensor_id" : 3, "value" : 3 }
于 2013-03-31T17:06:15.647 に答える