Skip to main content

[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

I suggest going with 1.7 - it's the most stable at the moment.

If you want the latest and greatest, you can go with 1.8.  If you go
with 1.8, you'll need to build geomesa in your local environment with
the -Paccumulo-1.8 profile.


Milan Muňko <milan.munko@xxxxxxxxxxx> writes:

> Hello Anthony,
>
> I can rebuild all stack, do you recommend to use accumulo 1.8? Or should
> I use 1.7 series?
>
> 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 27.12.2016 14:45, Anthony Fox wrote:
>> 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
>> _______________________________________________
>> 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


Back to the top