Problem with setting up JanusGraph with Solr on k8s
Hi All, I am trying to connect my JanusGraph instance to Solr. Both are hosted on K8s cluster.
I am using JanusGraph docker image version:1.0.0-rc2 (Looks like it is using solrJ 8.11.2) For Solr I am using following helm charts from: https://solr.apache.org/operator/resources.html The chart version is 0.7.0 and as per release notes it is deploying Solr 8.11.0 and I am deploying Solr as SolrCloud.
I am getting following exceptions: ERROR org.apache.tinkerpop.gremlin.server.util.ServerGremlinExecutor.<init> - Could not invoke constructor on class org.janusgraph.graphdb.management.JanusGraphManager (defined by the 'graphManager' setting) with one argument of class Settings Caused by: java.lang.IllegalArgumentException: Could not instantiate implementation: org.janusgraph.diskstorage.solr.SolrIndex Caused by: java.lang.reflect.InvocationTargetException Caused by: java.lang.NoSuchMethodError: 'java.lang.Object org.noggit.ObjectBuilder.getValStrict()' at org.apache.solr.common.util.Utils.fromJSON(Utils.java:319) ~[solr-solrj-8.11.2.jar:8.11.2 17dee71932c683e345508113523e764c3e4c80fa - mdrob - 2022-06-13 11:27:56] at org.apache.solr.common.util.Utils.fromJSON(Utils.java:305) ~[solr-solrj-8.11.2.jar:8.11.2 17dee71932c683e345508113523e764c3e4c80fa - mdrob - 2022-06-13 11:27:56] at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:245) ~[solr-solrj-8.11.2.jar:8.11.2 17dee71932c683e345508113523e764c3e4c80fa - mdrob - 2022-06-13 11:27:56] at org.apache.solr.common.cloud.ZkStateReader.refreshLegacyClusterState(ZkStateReader.java:639) ~[solr-solrj-8.11.2.jar:8.11.2 17dee71932c683e345508113523e764c3e4c80fa - mdrob - 2022-06-13 11:27:56]
Logs indicate that is was able to connect to ZooKeeper.
Based on search, the error indicates a mismatch in noggit version. Looks like Solr code uses a forked version of noggit. As per janusGraph release notes, it is tested against Solr 8.11.1
Any suggestions around how to debug or mitigate this issue?