24.2. Version 6.0.0¶
24.2.1. Minimum Java Version¶
With the latest versions of GeoTools and GeoServer, Java 17 is now the minimum required version.
24.2.2. Accumulo Version Support¶
GeoMesa no longer supports Accumulo 2.0. Users should upgrade to Accumulo 2.1.4.
24.2.3. Kafka Zookeeper Deprecation¶
As Kafka 4+ no longer supports Zookeeper, GeoMesa has deprecated support for using Zookeeper with the Kafka data store. See Migration from Zookeeper for details on migrating.
24.2.4. Dependency Version Upgrades¶
The following dependencies have been upgraded:
commons-codec
1.17.1->1.18.0commons-lang
3.15.0->3.20.0commons-logging
1.3.3->1.3.5commons-text
1.12.0->1.13.0geotools
33.2->34.2kafka
3.9.0->3.9.1micrometer
1.15.4->1.16.0nifi
2.6.0->2.7.2orc
1.9.7->1.9.8prometheus
1.4.1->1.4.3rhino
1.7.14->1.8.1scala 2.12
2.12.19->2.12.20scala 2.13
2.13.12->2.13.16sedona
1.8.0->1.8.1spark
3.5.5->3.5.7zookeeper
3.9.3->3.9.4
24.2.5. StrategyDecider API Update¶
The org.locationtech.geomesa.index.planning.StrategyDecider API has been changed slightly to provide more context for
implementations to use. The old API method has been deprecated and will be removed in a future version.
24.2.6. Spark Runtime JAR Changes¶
The various GeoMesa Spark runtime JARs have changed Maven coordinates, and now use a runtime classifier:
org.locationtech.geomesa:geomesa-accumulo-spark-runtime-accumulo21_2.12:jar->org.locationtech.geomesa:geomesa-accumulo-spark_2.12:jar:runtimeorg.locationtech.geomesa:geomesa-fs-spark-runtime_2.12:jar->org.locationtech.geomesa:geomesa-fs-spark_2.12:jar:runtimeorg.locationtech.geomesa:geomesa-gt-spark-runtime_2.12:jar->org.locationtech.geomesa:geomesa-gt-spark_2.12:jar:runtimeorg.locationtech.geomesa:geomesa-hbase-spark-runtime-hbase2_2.12:jar->org.locationtech.geomesa:geomesa-hbase-spark_2.12:jar:runtime
24.2.7. Removed Modules¶
The following modules have been removed:
geomesa-accumulo-spark-runtime-accumulo21(see above)geomesa-fs-spark-runtime(see above)geomesa-gt-spark-runtime(see above)geomesa-hbase-spark-runtime-hbase2(see above)geomesa-metrics-coregeomesa-metrics-cloudwatchgeomesa-metrics-graphitegeomesa-metrics-prometheusgeomesa-process-wpsgeomesa-zk-utils
The following JAR classifiers are no longer published:
geomesa-accumulo-datastore:testsgeomesa-fs-datastore:testsgeomesa-hbase-datastore:testsgeomesa-index-api:testsgeomesa-kafka-datastore:testsgeomesa-tools:data
24.2.8. Deprecated Classes¶
org.locationtech.geomesa.fs.data.FileSystemDataStoreFactory.FileSystemDataStoreParams- replaced withorg.locationtech.geomesa.fs.data.FileSystemDataStoreParamsorg.locationtech.geomesa.fs.storage.common.observer.FileSystemObserverFactory- replaced withorg.locationtech.geomesa.fs.storage.api.observer.FileSystemObserverFactoryorg.locationtech.geomesa.security.SecureSimpleFeatureorg.locationtech.geomesa.utils.stats.Cardinality- replaced withorg.locationtech.geomesa.utils.index.Cardinalityorg.locationtech.geomesa.utils.stats.IndexCoverage- replaced withorg.locationtech.geomesa.utils.index.IndexCoverage
24.2.9. Deprecated Methods¶
org.locationtech.geomesa.index.planning.StrategyDecider.selectFilterPlan
24.2.10. Internal API Changes¶
GeoMesa does not have a well-defined public API. This section details classes and methods that have been changed or removed, but are not meant to be publicly available.
24.2.10.1. Relocated Classes¶
org.locationtech.geomesa.fs.storage.common.AbstractFileSystemStorage.FileSystemPathReader->org.locationtech.geomesa.fs.storage.api.FileSystemStorage.FileSystemPathReaderorg.locationtech.geomesa.fs.storage.orc.OrcFileSystemReader->org.locationtech.geomesa.fs.storage.orc.ioorg.locationtech.geomesa.fs.storage.orc.OrcFileSystemStoragetype description methods moved to ->org.locationtech.geomesa.fs.storage.orc.io.SimpleFeatureTypeDescriptionorg.locationtech.geomesa.fs.storage.orc.OrcFileSystemWriter->org.locationtech.geomesa.fs.storage.orc.ioorg.locationtech.geomesa.fs.storage.orc.utils.OrcAttributeWriter->org.locationtech.geomesa.fs.storage.orc.ioorg.locationtech.geomesa.fs.storage.orc.utils.OrcSearchArguments->org.locationtech.geomesa.fs.storage.orc.ioorg.locationtech.geomesa.fs.storage.parquet.ParquetFileSystemStorage.ParquetFileSystemWriter->org.locationtech.geomesa.fs.storage.parquet.ioorg.locationtech.geomesa.fs.storage.parquet.ParquetPathReader->org.locationtech.geomesa.fs.storage.parquet.io.ParquetFileSystemReaderorg.locationtech.geomesa.fs.storage.parquet.SimpleFeatureParquetWriter->org.locationtech.geomesa.fs.storage.parquet.ioorg.locationtech.geomesa.index.planning.QueryPlanner.CostEvaluation->org.locationtech.geomesa.index.planning.StrategyDecider.CostEvaluationorg.locationtech.geomesa.utils.index.SizeSeparatedBucketIndex->org.locationtech.geomesa.memory.index.implorg.locationtech.geomesa.utils.index.BucketIndex->org.locationtech.geomesa.memory.index.implorg.locationtech.geomesa.utils.index.WrappedQuadTree->org.locationtech.geomesa.memory.index.implorg.locationtech.geomesa.utils.index.WrappedSTRtree->org.locationtech.geomesa.memory.index.implorg.locationtech.geomesa.utils.io.IncrementingFileName->org.locationtech.geomesa.tools.exportorg.locationtech.geomesa.utils.iterators.SimplePlaybackIterator->org.locationtech.geomesa.kafka.tools.ingestorg.locationtech.geomesa.utils.iterators.SortedMergeIterator->org.locationtech.geomesa.index.vieworg.locationtech.geomesa.utils.kryo.NonMutatingInput->org.locationtech.geomesa.features.kryo.implorg.locationtech.geomesa.utils.metrics.MetricsTags->org.locationtech.geomesa.metrics.micrometer.utils.TagUtilsorg.locationtech.geomesa.utils.stats->org.locationtech.geomesa.index.statsandorg.locationtech.geomesa.index.stats.impl
24.2.10.2. Removed Classes¶
org.locationtech.geomesa.accumulo.index.IndexValueEncoderorg.locationtech.geomesa.accumulo.util.TableUtilsorg.locationtech.geomesa.convert2.metrics.ConverterMetricsorg.locationtech.geomesa.convert2.validators.IdValidatororg.locationtech.geomesa.filter.index.BucketIndexSupportorg.locationtech.geomesa.filter.index.SizeSeparatedBucketIndexSupportorg.locationtech.geomesa.fs.storage.common.AbstractFileSystemStorage.FileSystemPathReaderorg.locationtech.geomesa.gt.partition.postgis.dialect.tables.PartitionTablespacesTableorg.locationtech.geomesa.hbase.utils.HBaseVersionsorg.locationtech.geomesa.index.planning.LocalQueryRunner.LocalTransformReducerorg.locationtech.geomesa.metrics.micrometer.MicrometerSetuporg.locationtech.geomesa.security.VisibilityEvaluatororg.locationtech.geomesa.tools.utils.StorageJobUtilsorg.locationtech.geomesa.utils.cache.ByteArrayCacheKeyorg.locationtech.geomesa.utils.cache.FilePersistenceorg.locationtech.geomesa.utils.cache.PropertiesPersistenceorg.locationtech.geomesa.utils.collection.AtomicBitSetorg.locationtech.geomesa.utils.collection.ConcurrentHashSetorg.locationtech.geomesa.utils.collection.MaybeSynchronizedorg.locationtech.geomesa.utils.collection.SelfClosingIteratororg.locationtech.geomesa.utils.collection.TieredOrderingorg.locationtech.geomesa.utils.conversions.ScalaImplicitsorg.locationtech.geomesa.utils.geohash.CoveringGeoHashesorg.locationtech.geomesa.utils.geohash.GeomDistanceorg.locationtech.geomesa.utils.geohash.VincentyModelorg.locationtech.geomesa.utils.geometry.DistanceCalculatororg.locationtech.geomesa.utils.index.SpatialIndexSupportorg.locationtech.geomesa.utils.index.SynchronizedQuadtreeorg.locationtech.geomesa.utils.io.ByteBuffersorg.locationtech.geomesa.utils.iterators.PlaybackIteratororg.locationtech.geomesa.utils.metrics.Timingorg.locationtech.geomesa.utils.metrics.Timingsorg.locationtech.geomesa.utils.metrics.TimingsImplorg.locationtech.geomesa.utils.stats.AutoLoggingTimingsorg.locationtech.geomesa.utils.stats.CountingInputStreamorg.locationtech.geomesa.utils.stats.NoOpTimingsorg.locationtech.geomesa.utils.stats.ThreadSafeTimingsImplorg.locationtech.geomesa.utils.text.ObjectPoolFactory
24.2.10.3. Removed Methods¶
org.locationtech.geomesa.accumulo.data.AccumuloDataStoreFactory- various system propertiesorg.locationtech.geomesa.accumulo.data.AccumuloDataStoreParams.InstanceIdParamorg.locationtech.geomesa.accumulo.jobs.AccumuloJobUtils#getMultipleQueryPlanorg.locationtech.geomesa.accumulo.jobs.AccumuloJobUtils#getSingleQueryPlanorg.locationtech.geomesa.arrow.io.FormatVersion.LatestVersionorg.locationtech.geomesa.convert.ConverterConfigLoader#rebaseConfigorg.locationtech.geomesa.convert.all.TypeAwareInference#infer(String,() => InputStream,Option[SimpleFeatureType],Option[String])org.locationtech.geomesa.convert2.SimpleFeatureConverter#createEvaluationContext(Map,Counter,Counter)org.locationtech.geomesa.convert2.SimpleFeatureConverterFactory#infer(InputStream,Option[SimpleFeatureType],Option[String])org.locationtech.geomesa.filter.filterToStringorg.locationtech.geomesa.fs.data.FileSystemDataStore#this(FileContext)org.locationtech.geomesa.fs.storage.common.partitions.DateTimeScheme#apply(DateTimeFormatter)org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory- various system propertiesorg.locationtech.geomesa.index.geotools.GeoMesaDataStore#queryPlannerorg.locationtech.geomesa.index.planning.LocalQueryRunner#visibleorg.locationtech.geomesa.index.planning.QueryPlanner- most static methodsorg.locationtech.geomesa.index.planning.QueryRunner#configureDefaultQueryorg.locationtech.geomesa.kafka.data.KafkaDataStore#producer(KafkaDataStoreConfig)org.locationtech.geomesa.kafka.utils.GeoMessageSerializer#apply(SimpleFeatureType, SerializationType, Boolean)org.locationtech.geomesa.lambda.stream.kafka.KafkaStore#topicorg.locationtech.geomesa.security#getAuthorizationsProviderorg.locationtech.geomesa.utils.bin.BinaryOutputEncoder#encode(CloseableIterator,OutputStream,Boolean)org.locationtech.geomesa.utils.conf.ConfConversions.RichConfig- various methodsorg.locationtech.geomesa.utils.geohash.BoundingBox- various unused methodsorg.locationtech.geomesa.utils.geohash.GeoHash- various unused methodsorg.locationtech.geomesa.utils.geohash.GeohashUtils- various unused methodsorg.locationtech.geomesa.utils.geotools.FeatureUtils#copyToWriterorg.locationtech.geomesa.utils.io.CompressionUtils#compress(InputStream)org.locationtech.geomesa.utils.io.fs.FileSystemDelegate.FileHandle#write(CreateMode,Boolean)