NoSuchMethodError


hadoopmarc@...
 

Thanks for reporting back! Unfortunately, java still has big problems using multiple versions of the same library, so your current approach is not a guarantee for success for future version updates (and even your current project may suffer from side-effects you have not encountered yet):

https://www.theserverside.com/tip/Problems-with-Java-modules-still-plague-developers

A good point of refence is running JanusGraph OLAP queries in the Gremlin Console using spark master = local[*], because an extensive test suite ran succesfully for each release. But practical projects, like yours, have other requirements than just served by Gremlin Conosole.

Best wishes,     Marc


Joe Obernberger
 

Oh - my apologies.  I'm using 0.6, and Cassandra 4.04.

What I eventually did was get the source from github and compile with Cassandra 4.  I'm using spark 3.2.1.

-Joe

On 5/19/2022 1:50 AM, hadoopmarc@... wrote:
Hi Joe,

Your issue description is not complete. To start:
  • what version of JanusGraph do you use?
  • what spark master do you use?

The easiest way to find the guava version of JanusGraph is to download the zip distribution and check the lib folder.

Best wishes,    Marc



AVG logo

This email has been checked for viruses by AVG antivirus software.
www.avg.com



Joe Obernberger
 

The answer to my problem was telling spark-submit to use the user classes first with:
--conf spark.executor.userClassPathFirst = true
--conf spark.driver.userClassPathFirst = true

-Joe

On 5/18/2022 9:57 AM, Joe Obernberger via lists.lfaidata.foundation wrote:

Hi All - I'm trying to write a spark job to load data from Cassandra in to a graph, but I'm getting this:

Exception in thread "main" java.lang.NoSuchMethodError: 'void com.google.common.base.Preconditions.checkArgument(boolean, java.lang.String, java.lang.Object)'
        at org.janusgraph.diskstorage.configuration.ConfigElement.<init>(ConfigElement.java:38)
        at org.janusgraph.diskstorage.configuration.ConfigNamespace.<init>(ConfigNamespace.java:32)
        at org.janusgraph.diskstorage.configuration.ConfigNamespace.<init>(ConfigNamespace.java:37)
        at org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.<clinit>(GraphDatabaseConfiguration.java:93)
        at org.janusgraph.core.JanusGraphFactory$Builder.open(JanusGraphFactory.java:275)

Which version of guava should I be using in the allinone jar? I've tried a many different once, but no luck.
Thanks!

-Joe

--
This email has been checked for viruses by AVG.
https://www.avg.com


hadoopmarc@...
 

Hi Joe,

Your issue description is not complete. To start:
  • what version of JanusGraph do you use?
  • what spark master do you use?

The easiest way to find the guava version of JanusGraph is to download the zip distribution and check the lib folder.

Best wishes,    Marc


Joe Obernberger
 

Hi All - I'm trying to write a spark job to load data from Cassandra in to a graph, but I'm getting this:

Exception in thread "main" java.lang.NoSuchMethodError: 'void com.google.common.base.Preconditions.checkArgument(boolean, java.lang.String, java.lang.Object)'
        at org.janusgraph.diskstorage.configuration.ConfigElement.<init>(ConfigElement.java:38)
        at org.janusgraph.diskstorage.configuration.ConfigNamespace.<init>(ConfigNamespace.java:32)
        at org.janusgraph.diskstorage.configuration.ConfigNamespace.<init>(ConfigNamespace.java:37)
        at org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.<clinit>(GraphDatabaseConfiguration.java:93)
        at org.janusgraph.core.JanusGraphFactory$Builder.open(JanusGraphFactory.java:275)

Which version of guava should I be using in the allinone jar? I've tried a many different once, but no luck.
Thanks!

-Joe


--
This email has been checked for viruses by AVG.
https://www.avg.com