Commit Graph

12 Commits

Author SHA1 Message Date
tidwall 9c471e3f9c Replace out old style atomics 2022-11-03 10:07:17 -07:00
tidwall 959f551f7b Increase timeout for slow CIs 2022-10-20 11:23:54 -07:00
tidwall c093b041e1 Parallel integration tests 2022-09-26 13:26:46 -07:00
tidwall d61f0bc6c8 wip - better tests 2022-09-23 07:30:03 -07:00
tidwall 4f4954020f enable fence tests 2020-11-03 14:56:31 -07:00
tidwall 4504ea75ac Updated Github Action files
Disabled some fence tests due to them hanging and
timing out in the Github Actions workflow, which is
something that did not happen with Travis CI.

I suspect that there's something up with Go routines
and or num of CPUs in the GH virtual environment.

Tests pass locally though
2020-11-03 14:36:07 -07:00
tidwall 100be7be3c Added tests 2020-10-23 09:50:51 -07:00
tidwall f7888c1edf Fixed malformed json for chans command
Mentioned by ds2xor on Slack
2019-08-03 10:10:28 -07:00
Steven Wolfe 087975abd1 Roaming geofence tests 2019-01-10 11:28:29 -07:00
Steven Wolfe a5fbcf5f15 Ensuring channel publish order 2019-01-09 00:23:53 -07:00
tidwall e577f60481 Updated redigo imports 2018-10-29 05:00:54 -07:00
tidwall 6257ddba78 Faster point in polygon / GeoJSON updates
The big change is that the GeoJSON package has been completely
rewritten to fix a few of geometry calculation bugs, increase
performance, and to better follow the GeoJSON spec RFC 7946.

GeoJSON updates

- A LineString now requires at least two points.
- All json members, even foreign, now persist with the object.
- The bbox member persists too but is no longer used for geometry
  calculations. This is change in behavior. Previously Tile38 would
  treat the bbox as the object's physical rectangle.
- Corrections to geometry intersects and within calculations.

Faster spatial queries

- The performance of Point-in-polygon and object intersect operations
  are greatly improved for complex polygons and line strings. It went
  from O(n) to roughly O(log n).
- The same for all collection types with many children, including
  FeatureCollection, GeometryCollection, MultiPoint, MultiLineString,
  and MultiPolygon.

Codebase changes

- The pkg directory has been renamed to internal
- The GeoJSON internal package has been moved to a seperate repo at
  https://github.com/tidwall/geojson. It's now vendored.

Please look out for higher memory usage for datasets using complex
shapes. A complex shape is one that has 64 or more points. For these
shapes it's expected that there will be increase of least 54 bytes per
point.
2018-10-13 04:30:48 -07:00