GeoMesa 3.1.0 is the first minor release in the 3.x line. This release includes 45 new features and bug fixes (TODO: Update link) since the 3.0.0 release. Users upgrading from 2.x should read the 3.0 Upgrade Guide. Install bundles for LocationTech GeoMesa can be downloaded from GitHub (TODO: verify link) or individual artifacts are available on Maven central. GeoMesa-NiFi Nars are available on GitHub (TODO: VERIFY LINK) or Maven central.
Dependency Version Updates and new Supported Versions
- Updated to GeoTools 23.3 (from 23.0) and GeoServer 2.17.3 (from 2.17.0)
- Updated to Avro 1.8.2 (from 1.7.5)
- Query Guards
- Created an API for Query Guards to block overly-broad queries from running
- Implemented temporal and graduated spatial-temporal query guards
- New GetGeoMesaKafkaRecord processor reads from Kafka and creates NiFi Records
- New GeoAvro RecordSetWriter to convert NiFi Records into Avro with geometries
- The GeoMesa NiFi processors can accept NiFi Records, allowing for more flexibility when creating flows
- GeoMesa's HBase integration now supports data age-off
- Json filter improvements
- Optimizations for GeoTools/GeoServer integration points (GeoTools visitors and other query patterns)
- Various Arrow Memory leaks have been addressed
- Various corner cases around handing Kryo data, metadata, and configuration.
Versions and Compatibility
The 2.x and 3.x lines of GeoMesa follows Semantic Versioning. It provides data compatibility with versions back to 1.2.0. GeoMesa 3.x offers public API compatibility with versions 3.x. It offers binary compatibility with versions 3.1.x.
Note that the GeoMesa public API is not currently well defined. Users with deep code integration with GeoMesa may need to update some calls.
GeoMesa 3.1.0 supports upgrade in place from previous versions of 2.x or 3.0.x, by updating the GeoMesa JAR versions. Ensure that JARs are updated in all clients and servers. See the upgrade guide for information on changes that may affect you after the update.