Segmentation fault (core dumped) when adding GeoJSON polygon in Aerospike

Stackoverflow crosspost.


I am Segmentation fault (core dumped) when i am trying to put GeoJSON in aerospike in persistent namespace. It happens very frequently. I also create an Index on the bbox field.

Below is the sample code ( This runs in a loop of 300000)

 geo_gson = GeoJSON({
                "type": "Polygon",
                "coordinates": [[
                    [min_lng, max_lat],
                    [max_lng, max_lat],
                    [max_lng, min_lat],
                    [min_lng, min_lat],
                    [min_lng, max_lat],
            bins = {
                "row": row, 
                "col": col,
                "city": city,
                "bbox": geo_gson,
                "min_lat": min_lat,
                "min_lng": min_lng,
                "max_lat": max_lat,
                "max_lng": max_lat
      aerospike_client.put(("namespace", "set", "mykey"), bins)

I am using aerospike server 3.8.3 and python client aerospike==2.0.5. There is no error in aerospike log. This just fails without any error information.


   {'city': 1L, 'max_lng': 12.66811406299999, 'min_lng': 77.229080252800131, 'bbox': '{"type": "Polygon", "coordinates": [[[77.229080252800131, 12.66811406299999], [77.239080252800136, 12.66811406299999], [77.239080252800136, 12.65811406299999], [77.229080252800131, 12.65811406299999], [77.229080252800131, 12.66811406299999]]]}', 'max_lat': 12.66811406299999, 'min_lat': 12.65811406299999, 'col': 26, 'row': 46}

This is the bin for which it crashes (client)

Update 2: If I limit the float precision to 6 decimal places it works.

There is a Geospatial related segfault addressed in the 2.0.7 python client release.

@kporter I mentioned in the update that if i decrease the precision of

  min_lat min_lng max_lat max_lng

the error does not come. I am facing the issue in 2.0.13 also but not as frequently

© 2015 Copyright Aerospike, Inc. | All rights reserved. Creators of the Aerospike Database.