MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

MongoDb 2.6.1 Kesalahan:17444 - Titik lama di luar batas untuk kueri bola

Anda menggunakan MongoDB 2.6.1 atau lebih tinggi karena kode yang Anda lihat telah ditambahkan sebagai perbaikan untuk JIRA-13666 masalah.

Masalahnya adalah beberapa kueri $near akan membuat server MongoDB crash saat dipanggil dengan koordinat lama yang berada di luar jangkauan.

Anda mungkin mengirim koordinat yang berada di luar jangkauan. Bagian kode yang memeriksa garis bujur dan garis lintang saat melakukan kueri $near dengan jarak maksimum (GeoParser::parsePointWithMaxDistance metode di geoparser.cpp ):

bool isValidLngLat(double lng, double lat) {
    return lat >= -90 && lat <= 90 && lng >= -180 && lng <= 180;
}

Jika koordinat di luar jangkauan centroid.flatUpgradedToSphere akan salah dan itu akan menyebabkan kesalahan yang Anda terima.

Anda harus mengubah koordinat Anda menjadi dalam jangkauan atau mengatur spherical parameter ke false untuk menghindari kesalahan ini.

Query.Near("Location", location.Geography.Longitude, 
           location.Geography.Latitude, location.Radius / 6371000, false)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Membuat indeks parsial saat bidang bukan nol

  2. Bagaimana cara mengaktifkan profil di node-mongodb-native?

  3. Pencarian teks lengkap MongoDB - kata yang cocok dan frasa yang tepat

  4. Perancah mentah Node.js Mongoosejs

  5. Bagaimana cara menghapus koleksi dari database di MongoDB menggunakan driver Mongo DB JAVA?