[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [geomesa-users] Exception java.lang.NoSuchMethodError org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.sendBaseOneway
|
Milan,
GeoMesa 1.3.0+ is built against Accumulo 1.7.2 by default. Is it
possible for you to bump your version of Accumulo up to the 1.7 series?
-Anthony.
Milan Muňko <milan.munko@xxxxxxxxxxx> writes:
> Hello Antony,
>
> My accumulo version is 1.6.6, but I wil try to use new 1.3.0-m3 and test
> if the issue persists.
>
> Thanks,
> Milan
>
>
>
> Ing. Milan Muňko | Co-Founder
>
> AI-MAPS s. r. o., Tallerova 4, 811 02 Bratislava Slovakia
>
> Mobile: +421 944 612 592
>
> Email: milan.munko@xxxxxxxxxxx
>
> Web: www.ai-maps.com
>
>
>
> On 23.12.2016 14:14, Anthony Fox wrote:
>> Hi Milan
>>
>> What version of Accumulo are you using? I've seen this error when
>> using 1.8.0. We recently merged a fix into master (1.3.0-m3-SNAPSHOT)
>> that addresses the issue. Basically, versions of the libthrift library
>> are out of sync.
>>
>> Thanks
>> Anthony
>>
>>
>> On Dec 23, 2016, at 7:38 AM, Milan Muňko <milan.munko@xxxxxxxxxxx
>> <mailto:milan.munko@xxxxxxxxxxx>> wrote:
>>
>>> Hello everyone and merry christmas
>>>
>>> I want to use write data to geomesa programatically, but I get
>>> following error:
>>>
>>> /Exception in thread "main" java.lang.NoSuchMethodError:
>>> org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.sendBaseOneway(Ljava/lang/String;Lorg/apache/thrift/TBase;)V//
>>> // at
>>> org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.send_closeScan(TabletClientService.java:303)//
>>> // at
>>> org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.closeScan(TabletClientService.java:295)//
>>> // at
>>> org.apache.accumulo.core.client.impl.ThriftScanner.getBatchFromServer(ThriftScanner.java:117)//
>>> // at
>>> org.apache.accumulo.core.metadata.MetadataLocationObtainer.lookupTablet(MetadataLocationObtainer.java:101)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.lookupTabletLocation(TabletLocatorImpl.java:483)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.lookupTabletLocationAndCheckLock(TabletLocatorImpl.java:654)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl._locateTablet(TabletLocatorImpl.java:640)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.locateTablet(TabletLocatorImpl.java:456)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.lookupTabletLocation(TabletLocatorImpl.java:480)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.lookupTabletLocationAndCheckLock(TabletLocatorImpl.java:654)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl._locateTablet(TabletLocatorImpl.java:640)//
>>> // at
>>> org.apache.accumulo.core.client.impl.TabletLocatorImpl.locateTablet(TabletLocatorImpl.java:456)//
>>> // at
>>> org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.java:247)//
>>> // at
>>> org.apache.accumulo.core.client.impl.ScannerIterator$Reader.run(ScannerIterator.java:79)//
>>> // at
>>> org.apache.accumulo.core.client.impl.ScannerIterator.hasNext(ScannerIterator.java:150)//
>>> // at
>>> scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:42)//
>>> // at scala.collection.Iterator$class.foreach(Iterator.scala:893)//
>>> // at scala.collection.AbstractIterator.foreach(Iterator.scala:1336)//
>>> // at
>>> scala.collection.IterableLike$class.foreach(IterableLike.scala:72)//
>>> // at scala.collection.AbstractIterable.foreach(Iterable.scala:54)//
>>> // at
>>> scala.collection.TraversableLike$class.map(TraversableLike.scala:234)//
>>> // at
>>> scala.collection.AbstractTraversable.map(Traversable.scala:104)//
>>> // at
>>> org.locationtech.geomesa.accumulo.data.MultiRowAccumuloMetadata.getFeatureTypes(GeoMesaMetadata.scala:339)//
>>> // at
>>> org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getTypeNames(AccumuloDataStore.scala:104)//
>>> // at
>>> org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getFeatureSource(AccumuloDataStore.scala:346)//
>>> // at
>>> org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getFeatureSource(AccumuloDataStore.scala:362)//
>>> // at com.aimaps.geomesa.DataWriter$.main(DataWriter.scala:100)//
>>> // at com.aimaps.geomesa.DataWriter.main(DataWriter.scala)/
>>>
>>> I am new to scala, this is my code:
>>>
>>> /package com.aimaps.geomesa//
>>> //
>>> //import org.locationtech.geomesa.accumulo.data.AccumuloDataStore//
>>> //import org.locationtech.geomesa.accumulo.index.Constants//
>>> //import org.locationtech.geomesa.utils.interop.SimpleFeatureTypes//
>>> //import org.locationtech.geomesa.utils.interop.WKTUtils//
>>> //
>>> //import org.opengis.feature.Feature//
>>> //import org.opengis.feature.simple.SimpleFeature//
>>> //import org.opengis.feature.simple.SimpleFeatureType//
>>> //
>>> //import org.geotools.data.DataStore//
>>> //import org.geotools.data.DataStoreFinder//
>>> //import org.geotools.data.FeatureSource//
>>> //import org.geotools.data.FeatureStore//
>>> //import org.geotools.data.Query//
>>> //import org.geotools.data.simple.SimpleFeatureStore//
>>> //import org.geotools.factory.CommonFactoryFinder//
>>> //import org.geotools.factory.Hints//
>>> //import org.geotools.feature.DefaultFeatureCollection//
>>> //import org.geotools.feature.FeatureCollection//
>>> //import org.geotools.feature.FeatureIterator//
>>> //import org.geotools.feature.SchemaException//
>>> //import org.geotools.feature.simple.SimpleFeatureBuilder//
>>> //import org.geotools.data.DataStore//
>>> //import org.geotools.data.DataStoreFinder//
>>> //
>>> //import org.apache.hadoop.conf.Configuration//
>>> //import org.apache.spark.{SparkConf, SparkContext}//
>>> //
>>> //import scala.collection.JavaConversions._//
>>> //import java.util.UUID.randomUUID//
>>> //
>>> //
>>> //object DataWriter {//
>>> ////
>>> // def main(args: Array[String]) {//
>>> ////
>>> // println("Starting up!")//
>>> ////
>>> ////
>>> // println("Generating Simple Feature")//
>>> // // Vygenerovanie sample tuple zaznamu //
>>> // val data = ("AF15B", "Sample Sensor", 78,
>>> System.currentTimeMillis(), 48.5, 18.0)//
>>> ////
>>> // // println(f"Generated data: $data")//
>>> ////
>>> // // Creating simple feature type//
>>> // val simpleFeatureType =
>>> SimpleFeatureTypes.createType("sampleSensor","objectId:String:index=full,note:String,value:Int:index=full,time:Date,geom:Point:srid=4326:index=full")//
>>> ////
>>> // //definicia ktory atribut ma byt pouzity ako time index//
>>> //simpleFeatureType.getUserData().put(Constants.SF_PROPERTY_START_TIME,
>>> "time");//
>>> ////
>>> // // vytvorenie simple feature buildera//
>>> // val featureBuilder = new SimpleFeatureBuilder(simpleFeatureType)//
>>> ////
>>> // // vytvorenie noveho simple feature//
>>> // val simpleFeature =
>>> featureBuilder.buildFeature(randomUUID.toString());//
>>> ////
>>> // //naplnenie simple feature datami//
>>> // simpleFeature.setAttribute("objectId", data._1)//
>>> // simpleFeature.setAttribute("note", data._2)//
>>> // simpleFeature.setAttribute("value", data._3)//
>>> // simpleFeature.setAttribute("time", data._4)//
>>> ////
>>> // // vytvorenie geometrie a priradenie geometrie//
>>> // val geometry = WKTUtils.read("POINT(" + data._6 + " " + data._5
>>> + ")")//
>>> // simpleFeature.setAttribute("geom", geometry)//
>>> ////
>>> ////
>>> // println("Generujem Feature Collection")//
>>> // val featureCollection = new DefaultFeatureCollection()//
>>> // featureCollection.add(simpleFeature)//
>>> ////
>>> // /**//
>>> // * ZAPIS SIMPLE FEATURE DO TABULKY//
>>> // *///
>>> ////
>>> // println("Initializing geomesa connection")//
>>> // // configuracia pripojenia na geomesa//
>>> // val dataStoreConfig = Map(//
>>> // "instanceId" -> "accumulo",//
>>> // "zookeepers" -> "localhost:2181",//
>>> // "user" -> "root",//
>>> // "password" -> "pass1234",//
>>> // "tableName" -> "test_insert",//
>>> // "auth" -> "")//
>>> ////
>>> ////
>>> // println("Creating data store")//
>>> // // vytvorenie datastore//
>>> // val dataStore =
>>> DataStoreFinder.getDataStore(dataStoreConfig).asInstanceOf[AccumuloDataStore]//
>>> // // vytvorenie schemy//
>>> // // dataStore.createSchema(simpleFeatureType)//
>>> ////
>>> // println("Creating feature store")//
>>> // val featureStore = dataStore.getFeatureSource("sampleSensor")//
>>> ////
>>> // println("Inserting features")//
>>> // featureStore.addFeatures(featureCollection)//
>>> ////
>>> // println("DONE.")//
>>> // }//
>>> ////
>>> //}/
>>>
>>> Thank you for any sudgestions,
>>>
>>> Milan
>>>
>>> --
>>>
>>> <podpis2.png>
>>> Ing. Milan Muňko | Co-Founder
>>>
>>> AI-MAPS s. r. o., Tallerova 4, 811 02 Bratislava Slovakia
>>>
>>> Mobile: +421 944 612 592
>>>
>>> Email: milan.munko@xxxxxxxxxxx
>>>
>>> Web: www.ai-maps.com
>>>
>>>
>>>
>>> _______________________________________________
>>> geomesa-users mailing list
>>> geomesa-users@xxxxxxxxxxxxxxxx <mailto:geomesa-users@xxxxxxxxxxxxxxxx>
>>> To change your delivery options, retrieve your password, or
>>> unsubscribe from this list, visit
>>> https://www.locationtech.org/mailman/listinfo/geomesa-users
>>
>>
>> _______________________________________________
>> geomesa-users mailing list
>> geomesa-users@xxxxxxxxxxxxxxxx
>> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
>> https://www.locationtech.org/mailman/listinfo/geomesa-users
>
> _______________________________________________
> geomesa-users mailing list
> geomesa-users@xxxxxxxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.locationtech.org/mailman/listinfo/geomesa-users