geomesa

Error when trying to ingest a file with many features


I installed and configured Geomesa using Docker containers. The versions I used for the various applications are:

To ingest a file I use the following command

geomesa-accumulo ingest --force -i accumulo -z zookeeper -u username -p myPassword -c myCatalog -f myFeature  /path/to/shapefile

Everything seems to work correctly. I tried ingesting shapefile and json and data are saved to Accumulo as they should. But when I try to ingest shapefile with many features, it gives the following error

Fatal error running local ingest worker on file.shp
2023-07-11 06:31:32,973 ERROR [org.locationtech.geomesa.tools.ingest.LocalConverterIngest] Fatal error running local ingest worker on file.shp
java.io.IOException: Error occurred trying to reproject data
        at org.geotools.data.store.ContentFeatureSource.getReader(ContentFeatureSource.java:723)
        at org.locationtech.geomesa.convert.shp.ShapefileConverter.parse(ShapefileConverter.scala:74)
        at org.locationtech.geomesa.convert2.AbstractConverter.process(AbstractConverter.scala:151)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$4(LocalConverterIngest.scala:172)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$4$adapted(LocalConverterIngest.scala:168)
        at scala.collection.Iterator.foreach(Iterator.scala:943)
        at scala.collection.Iterator.foreach$(Iterator.scala:943)
        at org.locationtech.geomesa.utils.collection.CloseableIterator$CloseableSingleIterator.foreach(CloseableIterator.scala:85)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$3(LocalConverterIngest.scala:168)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$3$adapted(LocalConverterIngest.scala:167)
        at org.locationtech.geomesa.utils.io.package$WithClose$.apply(package.scala:64)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$2(LocalConverterIngest.scala:167)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$2$adapted(LocalConverterIngest.scala:166)
        at org.locationtech.geomesa.utils.io.CloseablePool$CommonsPoolPool.borrow(CloseablePool.scala:68)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.run(LocalConverterIngest.scala:166)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException: Nothing to be reprojected! (check before using wrapper)
        at org.geotools.data.crs.ReprojectFeatureReader.<init>(ReprojectFeatureReader.java:152)
        at org.geotools.data.crs.ReprojectFeatureReader.<init>(ReprojectFeatureReader.java:117)
        at org.geotools.data.store.ContentFeatureSource.getReader(ContentFeatureSource.java:719)
        ... 19 more

While looking for a solution for my error, I read some comments stating that stacktrace is misleading and that the error would actually be caused by a large number of features that Geomesa cannot handle. I would like to know if this is indeed the case and if there is a way to solve the problem.

I converted the shapefile to csv format via QGIS and then tried to ingest it with geomesa. The error changes and seems to be related just to the large number of features.

at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter.writeFeature(GeoMesaFeatureWriter.scala:56)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter.writeFeature$(GeoMesaFeatureWriter.scala:46)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter$TableFeatureWriter.writeFeature(GeoMesaFeatureWriter.scala:151)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter$GeoMesaAppendFeatureWriter.write(GeoMesaFeatureWriter.scala:239)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter$GeoMesaAppendFeatureWriter.write$(GeoMesaFeatureWriter.scala:235)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter$$anon$3.write(GeoMesaFeatureWriter.scala:111)
        at org.locationtech.geomesa.utils.geotools.FeatureUtils$.write(FeatureUtils.scala:147)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$8(LocalConverterIngest.scala:181)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$8$adapted(LocalConverterIngest.scala:179)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:575)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:573)
        at org.locationtech.geomesa.utils.collection.CloseableIterator$FlatMapCloseableIterator.foreach(CloseableIterator.scala:132)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$7(LocalConverterIngest.scala:179)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$7$adapted(LocalConverterIngest.scala:173)
        at org.locationtech.geomesa.utils.io.CloseablePool$CommonsPoolPool.borrow(CloseablePool.scala:68)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$6(LocalConverterIngest.scala:173)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$6$adapted(LocalConverterIngest.scala:172)
        at org.locationtech.geomesa.utils.io.package$WithClose$.apply(package.scala:64)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$4(LocalConverterIngest.scala:172)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$4$adapted(LocalConverterIngest.scala:168)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:575)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:573)
        at org.locationtech.geomesa.utils.collection.CloseableIterator$CloseableSingleIterator.foreach(CloseableIterator.scala:85)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$3(LocalConverterIngest.scala:168)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$3$adapted(LocalConverterIngest.scala:167)
        at org.locationtech.geomesa.utils.io.package$WithClose$.apply(package.scala:64)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$2(LocalConverterIngest.scala:167)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.$anonfun$run$2$adapted(LocalConverterIngest.scala:166)
        at org.locationtech.geomesa.utils.io.CloseablePool$CommonsPoolPool.borrow(CloseablePool.scala:68)
        at org.locationtech.geomesa.tools.ingest.LocalConverterIngest$LocalIngestWorker.run(LocalConverterIngest.scala:166)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -320
        at java.lang.String.getBytes(String.java:881)
        at com.esotericsoftware.kryo.io.Output.writeAscii_slow(Output.java:495)
        at com.esotericsoftware.kryo.io.Output.writeString(Output.java:348)
        at org.locationtech.geomesa.features.kryo.impl.KryoFeatureSerialization$KryoStringWriter$.apply(KryoFeatureSerialization.scala:179)
        at org.locationtech.geomesa.features.kryo.impl.KryoFeatureSerialization.writeFeature(KryoFeatureSerialization.scala:71)
        at org.locationtech.geomesa.features.kryo.impl.KryoFeatureSerialization.serialize(KryoFeatureSerialization.scala:43)
        at org.locationtech.geomesa.features.kryo.impl.KryoFeatureSerialization.serialize$(KryoFeatureSerialization.scala:41)
        at org.locationtech.geomesa.features.kryo.KryoFeatureSerializer$MutableActiveSerializer.serialize(KryoFeatureSerializer.scala:75)
        at org.locationtech.geomesa.index.api.WritableFeature$FeatureLevelWritableFeature.$anonfun$values$2(WritableFeature.scala:153)
        at org.locationtech.geomesa.index.api.package$KeyValue.value$lzycompute(package.scala:183)
        at org.locationtech.geomesa.index.api.package$KeyValue.value(package.scala:183)
        at org.locationtech.geomesa.accumulo.data.AccumuloIndexAdapter$AccumuloIndexWriter.$anonfun$write$1(AccumuloIndexAdapter.scala:397)
        at org.locationtech.geomesa.accumulo.data.AccumuloIndexAdapter$AccumuloIndexWriter.$anonfun$write$1$adapted(AccumuloIndexAdapter.scala:396)
        at scala.collection.immutable.Vector.foreach(Vector.scala:1895)
        at org.locationtech.geomesa.accumulo.data.AccumuloIndexAdapter$AccumuloIndexWriter.write(AccumuloIndexAdapter.scala:396)
        at org.locationtech.geomesa.index.api.IndexAdapter$BaseIndexWriter.write(IndexAdapter.scala:153)
        at org.locationtech.geomesa.index.geotools.GeoMesaFeatureWriter.writeFeature(GeoMesaFeatureWriter.scala:50)
        ... 34 more

These are the first few lines of the geomesa.log file (related to ingestion of the converted csv file), but it pretty much repeats the same way for all entries.

2023-07-19 14:07:29,042 WARN [org.apache.hadoop.util.NativeCodeLoader] Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 2023-07-19 14:07:30,087 WARN [org.apache.accumulo.fate.zookeeper.ZooCache] Unhandled: WatchedEvent state:Closed type:None path:null 2023-07-19 14:07:30,742 INFO [org.locationtech.geomesa.tools.user] No converter defined - will attempt to detect schema from input files 2023-07-19 14:07:31,571 INFO [org.locationtech.geomesa.tools.user] Creating schema 'PSP' 2023-07-19 14:07:33,753 INFO [org.locationtech.geomesa.tools.user] Running ingestion in local mode 2023-07-19 14:07:33,767 INFO [org.locationtech.geomesa.tools.user] Ingesting 1 file with 1 thread 2023-07-19 14:07:34,211 INFO [org.locationtech.geomesa.convert.text.DelimitedTextConverter] Failed to evaluate SimpleFeature on line 1 2023-07-19 14:07:34,241 ERROR [org.locationtech.geomesa.tools.ingest.LocalConverterIngest] Failed to write 'b21e7ad25644eb01a5085e2d56c97b88=BBTE000|-3.6|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|-9999.0|0.0|1.6|2.9|3.7|4.1|4.0|3.6|3.3|3.0|3.3|3.5|2.5|1.7|0.9|0.1|0.1|0.0|0.4|0.7|0.5|0.2|-0.5|-1.0|-0.9|-0.8|-0.7|-0.7|-0.6|-0.6|-0.2|0.0|-0.4|-0.7|-0.8|-1.0|-1.0|-1.1|-1.2|-1.4|-1.7|-2.0|-2.3|-2.7|-3.1|-3.6|-3.2|-2.6|-2.5|-2.6|-2.7|-2.8|-3.0|-3.1|-3.0|-3.0|-3.1|-3.0|-2.9|-3.2|-4.5|-5.2|-5.3|-5.6|-5.3|-5.3|-5.9|-6.1|-4.2|-2.8|-2.4|-2.1|-2.4|-2.9|-3.0|-2.6|-2.0|-1.8|-1.8|-2.1|-3.1|-3.7|-3.3|-3.0|-3.1|-3.2|-3.4|-3.4|-3.3|-3.0|-2.9|-3.1|-2.8|-2.5|-2.2|-1.8|-1.0|-0.6|-1.4|-2.2|-3.3|-4.2|-5.1|-6.1|-6.3|-5.7|-5.7|-5.9|-6.1|-6.4|-5.8|-5.2|-4.9|-4.7|-4.7|-4.7|-5.0|-5.5|-5.1|-5.2|-5.2|-5.2|-5.2|-5.1|-4.4|-3.7|-3.8|-3.9|-4.4|-5.2|-5.6|-6.2|-7.1|-7.3|-7.4|-7.5|-8.1|-9.2|-10.0|-9.5|-9.1|-8.8|-8.3|-8.0|-7.1|-6.4|-6.2|-6.5|-7.0|-7.4|-7.9|-7.9|-7.9|-7.9|-8.3|-9.1|-9.2|-9.3|-9.5|-9.7|-9.7|-9.8|-9.8|-9.7|-9.3|-8.7|-8.6|-8.7|-9.3|-10.0|-10.6|-10.6|-10.4|-10.3|-10.0|-10.4|-10.8|-10.8|-10.6|-9.5|-7.9|-5.8|-6.0|-6.0|-5.2|-4.5|-4.6|-5.3|-6.7|-8.2|-8.4|-7.6|-6.6|-7.3|-8.7|-9.8|-10.0|-9.6|-8.9|-8.9|-9.1|-9.4|-9.2|-9.2|-9.3|-9.4|-9.3|-8.9|-9.1|-9.4|-9.6|-9.6|-10.0|-10.2|-10.4|-10.7|-10.8|-10.9|-10.9|-11.0|-11.2|-11.1|-11.1|-11.0|-10.9|-11.3|-11.6|-12.0|-12.4|-13.3|-14.6|-15.1|-15.8|-16.5|-17.2|-18.1|-19.3|-18.5|-16.8|-14.9|-13.2|-11.8|-10.6|-10.3|-10.7|-12.0|-13.2|-14.0|-12.5|-12.1|-11.9|-11.3|-10.7|-9.9|-9.9|-9.8|-9.0|-10.0|-11.4|-12.5|-13.6|-13.6|-12.8|-12.1|-12.2|-12.2|-12.0|-12.1|-12.4|-12.5|-12.6|-12.6|-13.0|-13.7|-14.2|-14.4|-14.5|-14.3|-14.1|-14.4|-14.6|-14.9|-14.8|-14.8|-14.9|-15.3|-16.2|-16.6|-16.9|-17.0|-17.0|-17.0|-17.6|-17.2|-16.0|-14.6|-13.3|-13.4|-14.3|-15.5|-14.4|-14.5|-14.4|-14.5|-14.6|-14.9|-15.4|-16.1|-17.1|-16.6|-16.0|-16.0|-15.2|-14.0|-13.2|-13.5|-13.4|-14.0|-15.4|-16.1|-16.3|-16.8|-16.7|-16.8|-16.7|-16.5|-15.9|-15.2|-14.7|-14.6|-14.5|-14.5|-14.1|-13.8|-14.2|-14.3|-14.9|-15.6|-17.1|-18.4|-19.2|-19.2|-18.8|-18.8|-18.7|-18.6|-18.2|-17.4|-16.9|-17.5|-19.6|-20.8|-21.4|-21.6|-21.7|-22.0|-22.4|-22.2|-21.7|-20.6|-18.6|-17.7|-17.6|-16.9|-18.0|-18.8|-19.1|-18.9|-17.7|-16.1|-15.9|-16.8|-17.6|-18.7|-19.0|-19.2|-19.7|-20.8|-21.3|-21.5|-22.2|-24.2|-25.6|-26.9|-27.7|-28.1|-28.2|-27.7|-26.7|-25.6|-24.7|-24.5|-24.6|-24.9|-25.3|-25.9|-26.5|-27.0|-27.2|-26.4|-25.9|-25.1|POINT (0 1.600000023841858)'

This is the first entry of the csv file.

BBTE000,-3.6,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,-9999.0,0.0,1.6,2.9,3.7,4.1,4.0,3.6,3.3,3.0,3.3,3.5,2.5,1.7,0.9,0.1,0.1,0.0,0.4,0.7,0.5,0.2,-0.5,-1.0,-0.9,-0.8,-0.7,-0.7,-0.6,-0.6,-0.2,0.0,-0.4,-0.7,-0.8,-1.0,-1.0,-1.1,-1.2,-1.4,-1.7,-2.0,-2.3,-2.7,-3.1,-3.6,-3.2,-2.6,-2.5,-2.6,-2.7,-2.8,-3.0,-3.1,-3.0,-3.0,-3.1,-3.0,-2.9,-3.2,-4.5,-5.2,-5.3,-5.6,-5.3,-5.3,-5.9,-6.1,-4.2,-2.8,-2.4,-2.1,-2.4,-2.9,-3.0,-2.6,-2.0,-1.8,-1.8,-2.1,-3.1,-3.7,-3.3,-3.0,-3.1,-3.2,-3.4,-3.4,-3.3,-3.0,-2.9,-3.1,-2.8,-2.5,-2.2,-1.8,-1.0,-0.6,-1.4,-2.2,-3.3,-4.2,-5.1,-6.1,-6.3,-5.7,-5.7,-5.9,-6.1,-6.4,-5.8,-5.2,-4.9,-4.7,-4.7,-4.7,-5.0,-5.5,-5.1,-5.2,-5.2,-5.2,-5.2,-5.1,-4.4,-3.7,-3.8,-3.9,-4.4,-5.2,-5.6,-6.2,-7.1,-7.3,-7.4,-7.5,-8.1,-9.2,-10.0,-9.5,-9.1,-8.8,-8.3,-8.0,-7.1,-6.4,-6.2,-6.5,-7.0,-7.4,-7.9,-7.9,-7.9,-7.9,-8.3,-9.1,-9.2,-9.3,-9.5,-9.7,-9.7,-9.8,-9.8,-9.7,-9.3,-8.7,-8.6,-8.7,-9.3,-10.0,-10.6,-10.6,-10.4,-10.3,-10.0,-10.4,-10.8,-10.8,-10.6,-9.5,-7.9,-5.8,-6.0,-6.0,-5.2,-4.5,-4.6,-5.3,-6.7,-8.2,-8.4,-7.6,-6.6,-7.3,-8.7,-9.8,-10.0,-9.6,-8.9,-8.9,-9.1,-9.4,-9.2,-9.2,-9.3,-9.4,-9.3,-8.9,-9.1,-9.4,-9.6,-9.6,-10.0,-10.2,-10.4,-10.7,-10.8,-10.9,-10.9,-11.0,-11.2,-11.1,-11.1,-11.0,-10.9,-11.3,-11.6,-12.0,-12.4,-13.3,-14.6,-15.1,-15.8,-16.5,-17.2,-18.1,-19.3,-18.5,-16.8,-14.9,-13.2,-11.8,-10.6,-10.3,-10.7,-12.0,-13.2,-14.0,-12.5,-12.1,-11.9,-11.3,-10.7,-9.9,-9.9,-9.8,-9.0,-10.0,-11.4,-12.5,-13.6,-13.6,-12.8,-12.1,-12.2,-12.2,-12.0,-12.1,-12.4,-12.5,-12.6,-12.6,-13.0,-13.7,-14.2,-14.4,-14.5,-14.3,-14.1,-14.4,-14.6,-14.9,-14.8,-14.8,-14.9,-15.3,-16.2,-16.6,-16.9,-17.0,-17.0,-17.0,-17.6,-17.2,-16.0,-14.6,-13.3,-13.4,-14.3,-15.5,-14.4,-14.5,-14.4,-14.5,-14.6,-14.9,-15.4,-16.1,-17.1,-16.6,-16.0,-16.0,-15.2,-14.0,-13.2,-13.5,-13.4,-14.0,-15.4,-16.1,-16.3,-16.8,-16.7,-16.8,-16.7,-16.5,-15.9,-15.2,-14.7,-14.6,-14.5,-14.5,-14.1,-13.8,-14.2,-14.3,-14.9,-15.6,-17.1,-18.4,-19.2,-19.2,-18.8,-18.8,-18.7,-18.6,-18.2,-17.4,-16.9,-17.5,-19.6,-20.8,-21.4,-21.6,-21.7,-22.0,-22.4,-22.2,-21.7,-20.6,-18.6,-17.7,-17.6,-16.9,-18.0,-18.8,-19.1,-18.9,-17.7,-16.1,-15.9,-16.8,-17.6,-18.7,-19.0,-19.2,-19.7,-20.8,-21.3,-21.5,-22.2,-24.2,-25.6,-26.9,-27.7,-28.1,-28.2,-27.7,-26.7,-25.6,-24.7,-24.5,-24.6,-24.9,-25.3,-25.9,-26.5,-27.0,-27.2,-26.4,-25.9,-25.1


Solution

  • I don't think it has anything to do with the number of features, but rather with the CRS of the shapefile. It seems like it may be a bug in geotools - there is an if guard here that should prevent reprojection if it is not needed, but it doesn't seem to match the check inside the ReprojectFeatureReader, which is causing an exception to be thrown. It may also be a bug in GeoMesa where it is using the API wrong when setting the CRS here, possibly there should be additional checks before calling that method. If you can provide a reproducible test case, please open a ticket in the GeoMesa JIRA.

    You may be able to work around it by using a different tool to reproject the shapefile into EPSG:4326 (which is the EPSG required by GeoMesa), or by converting it to a different format like CSV.