GeoMesa 1.3.0-m0 Release Notes

GeoMesa 1.3.0-m0 is the first milestone for our GeoMesa 1.3 line and includes 40+ Fixes and Improvements

Versions & Compatibility

1.2 Maintenance Releases - GeoMesa will continue to cut releases on the 1.2.x line of GeoMesa targeted at bugfixes and stability improvements for existing Accumulo 1.6+ installations. Features may be backported from 1.3 to 1.2, but in general new functionality will be targeted to 1.3 in order to balance stability with innovation.

GeoMesa 1.3 Compatibility- The 1.3 line of GeoMesa will be a stable line of GeoMesa releases that is aimed at providing as much API compatibility as possible. Our goal is to provide minor version interoperability meaning that any 1.3.x client or server code can interoperate. This compatibility feature will not be available during the 1.3.0 milestone release phase.

GeoMesa 1.2 Compatibility- The 1.2 line of GeoMesa releases provides what we have termed data compatibility, meaning that data ingested with previous versions can still be used with new versions of the GeoMesa JARs. For example, data ingested with 1.2.0 can be read and written by 1.2.6. This compatibility requires that the GeoServer plugin, tools, and distributed runtime JARs all have to match in their minor version numbers.

GeoMesa 1.3 Milestone Releases - GeoMesa 1.3 will release a series of milestone releases which are not designed to be interoperable with each other from an API point of view. They will, however, still provide data compatibility. They are intended to provide new functionality to early adopters. When upgrading to future release candidates, make sure to upgrade all GeoMesa JARs in your environment (i.e. GeoServer plugin, distributed runtime, and ingest JARs) to the same matching versions.

Major Changes

Minimum Supported Versions

  • Geomesa 1.3 introduces some major version changes for supporting libraries. The new minimum supported versions of note are:
    • Accumulo 1.7 (still works with 1.6)
    • Spark 2.0 (can be downgraded to 1.6 and 1.5)
    • GeoTools 15
    • GeoServer 2.9
    • Java 8
    • Nifi 1.0
  • The GeoMesa 1.2 line will continue to support the previous versions:
    • Accumulo 1.6
    • Spark 1.5+
    • GeoTools 14
    • GeoServer 2.8
    • Java 7+

Scala 2.10/2.11 Cross Compile

  • GeoMesa now supports Scala 2.10 cross-compile. Artifact names have a Scala version suffix appended similar to Kafka and Spark.

    Scala 2.10 compile instructions
    ./dev/change-scala-version.sh 2.10
    mvn -Dscala-2.10 clean package

Binary Distribution Updates

  • GeoMesa now provides separate distributions for each different type of underlying data store. There are four major distributions:
    • geomesa-accumulo-dist_2.11-1.3.0-m0.tar.gz
    • geomesa-kafka-08-dist_2.11-1.3.0-m0.tar.gz
    • geomesa-hbase-dist_2.11-1.3.0-m0.tar.gz (requires compilation)
    • geomesa-cassandra-dist_2.11-1.3.0-m0.tar.gz (requires compilation)

Command Line Tools

  • Accumulo and Kafka tools are now split into separate modules.
  • The GeoMesa command line tools are now bundled with the distribution as a single tarball.

Separate Kafka Distributions

  • There are now three Kafka distributions located in the geomesa-kafka/geomesa-kafka-dist module:
    • Kafka 08 - available for download
    • Kafka 09 - requires compilation
    • Kafka 10 - requires compilation

Allow Add/Update/Removal of Indexes

  • Users can now add, update and remove specific types of indexes (e.g. Z2, Z3, XZ2, XZ3, etc) for feature types within a catalog.

Upgrading

  • GeoMesa 1.3.0-m0 supports upgrade in place from 1.2.x versions.
  • Procedure:
    • Ensure that the GeoServer plugins, distributed runtime, and tools JARs are all of the same client version.
    • Shut down GeoServer.
    • Upgrade the distributed runtime in Accumulo as well as the Geomesa JARs in GeoServer.