ScyllaDB + Stargate

Hello ScyllaDB community,

We need a document interface to access our data in ScyllaDB, but we have noticed that it is not available. We have come across the Stargate.io project, which provides a document-oriented API for Cassandra DB. We tried to run Stargate.io with ScyllaDB since ScyllaDB claims to have API compatibility, but we were unable to do so.

Does anyone have any thoughts or experience with this? Is it possible to integrate a document interface with ScyllaDB? We would greatly appreciate any insights or suggestions.

Thank you in advance for your assistance.

Hey Alexander,
What were the issues you ran into when you tried to run Stargate.io with ScyllaDB?
Please share as many details as possible, so that we can get a better idea.

I am seeing similar behavior when attempting to set this up in a development environment using single node microk8s install and Helm. Result is that the coordinator fails to start with a “ServiceStartException: Unable to start persistence-cassandra-3.11” caused by the runtime exception “Unable to gossip with any peers”.

To repro:

  1. Install microk8s and enable dns, ingress and hostpath-storage
  2. Install scylla using: Deploying Scylla stack using Helm Charts | ScyllaDB Docs
  3. Install stargate using: https://github.com/stargate/stargate/blob/main/helm/README.md
    …and the following values:
    cassandra:
    seed: “first-scylla-pod-ip.scylla.pod.cluster.local”
    clusterVersion: “3.11”

Result:
A runtime exception starting the stargate-coordinator:
ERROR: Bundle io.stargate.db.cassandra_3_11 [1] EventDispatcher: Error during dispatch. (io.stargate.core.activator.ServiceStartException: Unable to start persistence-cassandra-3.11)
io.stargate.core.activator.ServiceStartException: Unable to start persistence-cassandra-3.11
…
Caused by: java.lang.RuntimeException: Unable to gossip with any peers
at org.apache.cassandra.gms.Gossiper.doShadowRound(Gossiper.java:1603)
…

I was able to find an article that seems to indicate I may need to use ssl as the gossip protocol. I did attempt this by mounting a trust and keystore and passing the additiona java opts but same result as above.

Any help appreciated as we would like to evaluate this combo in a development environment.

Thanks!

1 Like

Stargate tries to become a member of the cluster. Since ScyllaDB isn’t compatible with Cassandra at the internode protocol level, this doesn’t work.

This has to be fixed in Stargate, by making it only use CQL when talking to ScyllaDB clusters.

1 Like