26 Commits

Author SHA1 Message Date
tidwall
588207d162 Added AOFSHINK tests 2022-09-26 16:43:55 -07:00
tidwall
ad8d40dee5 Better AOF/AOFMD5 tests 2022-09-26 15:43:14 -07:00
tidwall
c093b041e1 Parallel integration tests 2022-09-26 13:26:46 -07:00
tidwall
3cb8e0509a Thread safe log and support for concurrent tile38 instances 2022-09-26 10:02:02 -07:00
tidwall
906824323b More graceful Tile38 shutdown 2022-09-25 06:28:17 -07:00
tidwall
f2c3b3924a wip - aof tests 2022-09-25 03:54:22 -07:00
tidwall
13ceb7da41 Removed global variables from core package
The core package uses global variables that keep from having
more than one Tile38 instance runnning in the same process.

Move the core variables in the server.Options type which are
uniquely stated per Server instance.

The build variables are still present in the core package.
2022-09-24 15:44:32 -07:00
tidwall
5c455cbe10 Better HEALTHZ tests 2022-09-23 17:34:09 -07:00
tidwall
d61f0bc6c8 wip - better tests 2022-09-23 07:30:03 -07:00
tidwall
fc4a627aa6 Use struct for server options 2021-09-06 08:55:13 -07:00
tidwall
401670e621 Fix NEARBY with SPARSE returning too many results
fixes #618
2021-07-22 08:39:57 -07:00
tidwall
579a41abae Merge branch 'housecanary-fix-knn' 2021-07-11 10:02:59 -07:00
Oliver
de055384f9 add tests 2021-05-13 21:14:06 -04:00
Oliver
7ec4d58392 cleanup / fix tests 2021-05-13 21:14:05 -04:00
Mike Poindexter
fe6e3863ba Add bench tests for knn 2020-04-08 11:36:37 -07:00
tidwall
b86d2287f4 Removed elapsed member for json testing 2019-05-28 09:22:15 -07:00
tidwall
fc3e8b4359 Fix nearby with match query invalid results
closes #421
2019-03-01 06:55:26 -07:00
tidwall
e577f60481 Updated redigo imports 2018-10-29 05:00:54 -07:00
tidwall
555e47036c Replaced net package with evio
- Added threads startup flag
- Replaced net package with evio
- Refactored controller into server
2018-10-28 15:51:47 -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
Josh Baker
7e9871bb69 Refactor project layout
Move internal and support packages to pkg directory
2018-04-19 08:43:32 -07:00
Josh Baker
d3329f07aa discard quiet logs 2017-10-03 08:53:09 -07:00
Pavel Makarenko
a4e5d38461 Disable HTTP & WebSocket transports on demand. (#128)
* Added .idea folder into .gitignore

* Added --http-transport flag

* Fixed test & Removed some dumps

* Added support of yes/no
2017-01-13 08:45:28 -07:00
Josh Baker
3e3d364911 test app for #107 2016-12-28 11:16:28 -07:00
Josh Baker
2e41d49c4b wip tests 2016-12-04 08:52:38 -07:00
Josh Baker
a664bade48 added black-box testing 2016-12-02 09:14:34 -07:00