Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [geomesa-users] Unable to find required metadata property for <FeatureTypeName>:version

Thanks for the quick response.

 

I have verified that the jars in both the master and tservers match the versions that I am using from my Java client as detailed in the aforementioned pom file. 

 

I am also getting the error when trying to query through my Java code.  I can create GeoMesa records and query them in the same thread, using the same DataStore connection.  But if I create the records in one thread, and get a new DataStore in another thread to query the records, this is where it fails with the error about the version.

 

So the scenario is this:

 

1.      Get the DataStore connection.

2.      Insert GeoMesa records

3.      Query GeoMesa records (works).

-----

1.      Get the DataStore connection.

2.      Query, getSchema(), etc fails with the version error.

 

 

So from the stack trace:

 

at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getIteratorVersion(AccumuloDataStore.scala:131)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.getVersion(GeoMesaDataStore.scala:329)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.checkProjectVersion(GeoMesaDataStore.scala:342)

 

 

should I be focusing my efforts on the geomsa-accumulo-datastore_2.11-2.0.1 jar being the culprit?

 

Perhaps, maybe I should start here:  What should the pom file look like?  It’s hard to tell from the multiple levels of projects of the Quick Start as to what are the bare minimum dependencies needed for a GeoMesa-Accumulo project.

 

Thanks,

Trevor Morris

 

 

From: geomesa-users-bounces@xxxxxxxxxxxxxxxx [mailto:geomesa-users-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Emilio Lahr-Vivaz
Sent: Monday, August 20, 2018 7:04 AM
To: geomesa-users@xxxxxxxxxxxxxxxx
Subject: Re: [geomesa-users] Unable to find required metadata property for <FeatureTypeName>:version

 

Hi Trevor,

I believe you still have a jar version mismatch somewhere. You can run the 'classpath' CLI command to see what jars you are picking up, i.e. `./geomesa-accumulo classpath`. The latest binary distributions, which include the CLI tools, are available on github:

https://github.com/locationtech/geomesa/releases/tag/geomesa_2.11-2.0.2
https://github.com/locationtech/geomesa/releases/download/geomesa_2.11-2.0.2/geomesa-accumulo_2.11-2.0.2-bin.tar.gz

Thanks,

Emilio

On 08/18/2018 05:00 PM, Morris, Trevor R wrote:

I am receiving the following error when I try to do a describe-schema or stats-count from the command line tools. 

 

A previous question was asked and answered here https://github.com/geomesa/geomesa-tutorials/issues/51, but I have confirmed that my versions are consistent.

 

I am using 2.11-2.0.1 version of geomesa-accumulo and have confirmed that this is the version of the distributed runtime jar installed on the master and tablet servers.  Are there other places I need to check for version consistency?  These are images within the geodocker project.

 

These records were inserted using the Java API libraries, which are at the same version, as shown here in the snippet from my POM file:

 

         <properties>

      <geomesa.version>2.0.1</geomesa.version>

      <scala.abi.version>2.11</scala.abi.version>

    </properties>

 

    <dependency>

      <groupId>org.locationtech.geomesa</groupId>

      <artifactId>geomesa-utils_${scala.abi.version}</artifactId>

      <version>${geomesa.version}</version>

    </dependency>

    <dependency>

      <groupId>org.locationtech.geomesa</groupId>

      <artifactId>geomesa-index-api_${scala.abi.version}</artifactId>

      <version>${geomesa.version}</version>

    </dependency>

    <dependency>

      <groupId>org.locationtech.geomesa</groupId>

      <artifactId>geomesa-feature-avro_${scala.abi.version}</artifactId>

      <version>${geomesa.version}</version>

    </dependency>

    <dependency>

      <groupId>org.locationtech.geomesa</groupId>

      <artifactId>geomesa-accumulo-datastore_${scala.abi.version}</artifactId>

      <version>${geomesa.version}</version>

    </dependency>

    <dependency>

      <groupId>org.apache.accumulo</groupId>

      <artifactId>accumulo-core</artifactId>

      <version>1.9.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.accumulo</groupId>

      <artifactId>accumulo-start</artifactId>

      <version>1.9.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.zookeeper</groupId>

      <artifactId>zookeeper</artifactId>

      <version>3.4.12</version>

    </dependency>

 

================================

ERROR:

 

ERROR Unable to find required metadata property for <MY_FEATURE_TYPE_NAME>:version

java.lang.RuntimeException: Unable to find required metadata property for TrackMessagePoint:version

        at org.locationtech.geomesa.index.metadata.GeoMesaMetadata$$anonfun$readRequired$1.apply(GeoMesaMetadata.scala:70)

        at org.locationtech.geomesa.index.metadata.GeoMesaMetadata$$anonfun$readRequired$1.apply(GeoMesaMetadata.scala:70)

        at scala.Option.getOrElse(Option.scala:121)

        at org.locationtech.geomesa.index.metadata.GeoMesaMetadata$class.readRequired(GeoMesaMetadata.scala:69)

        at org.locationtech.geomesa.accumulo.data.AccumuloBackedMetadata.readRequired(AccumuloBackedMetadata.scala:22)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getSchema(AccumuloDataStore.scala:244)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.getAllIndexTableNames(GeoMesaDataStore.scala:101)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.getAllTableNames(GeoMesaDataStore.scala:91)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getAllTableNames(AccumuloDataStore.scala:100)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore$$anonfun$getIteratorVersion$1.apply(AccumuloDataStore.scala:131)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore$$anonfun$getIteratorVersion$1.apply(AccumuloDataStore.scala:131)

        at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:252)

        at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:252)

        at scala.collection.immutable.Set$Set1.foreach(Set.scala:79)

        at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:252)

        at scala.collection.AbstractTraversable.flatMap(Traversable.scala:104)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getIteratorVersion(AccumuloDataStore.scala:131)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.getVersion(GeoMesaDataStore.scala:329)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.checkProjectVersion(GeoMesaDataStore.scala:342)

        at org.locationtech.geomesa.index.geotools.GeoMesaDataStore.getSchema(GeoMesaDataStore.scala:191)

        at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getSchema(AccumuloDataStore.scala:221)

        at org.locationtech.geomesa.tools.status.DescribeSchemaCommand$class.getSchema(DescribeSchemaCommand.scala:41)

        at org.locationtech.geomesa.accumulo.tools.status.AccumuloDescribeSchemaCommand.getSchema(AccumuloDescribeSchemaCommand.scala:18)

        at org.locationtech.geomesa.tools.status.DescribeSchemaCommand$$anonfun$execute$1.apply(DescribeSchemaCommand.scala:28)

        at org.locationtech.geomesa.tools.status.DescribeSchemaCommand$$anonfun$execute$1.apply(DescribeSchemaCommand.scala:27)

        at org.locationtech.geomesa.tools.DataStoreCommand$class.withDataStore(Command.scala:59)

        at org.locationtech.geomesa.accumulo.tools.status.AccumuloDescribeSchemaCommand.withDataStore(AccumuloDescribeSchemaCommand.scala:18)

        at org.locationtech.geomesa.tools.status.DescribeSchemaCommand$class.execute(DescribeSchemaCommand.scala:27)

        at org.locationtech.geomesa.accumulo.tools.status.AccumuloDescribeSchemaCommand.execute(AccumuloDescribeSchemaCommand.scala:18)

        at org.locationtech.geomesa.tools.Runner$class.main(Runner.scala:28)

        at org.locationtech.geomesa.accumulo.tools.AccumuloRunner$.main(AccumuloRunner.scala:29)

        at org.locationtech.geomesa.accumulo.tools.AccumuloRunner.main(AccumuloRunner.scala)

 

 

Thanks for any and all help,

Trevor Morris

 

 




_______________________________________________
geomesa-users mailing list
geomesa-users@xxxxxxxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.locationtech.org/mailman/listinfo/geomesa-users

 


Back to the top