Service Virtualization

  • 1.  I am unable to connect to Cassandra Database.

    Posted Oct 11, 2016 10:57 AM

    I am unable to connect to Cassandra Database. I am getting below exception when tried with below driver & connection string

    org.apache.cassandra.cql.jdbc.CassandraDriver

    jdbc:cassandra://<IP>:<Port>/<keyspace>

    Exception: There was a SQLException: java.sql.SQLNonTransientConnectionException: org.apache.thrift.transport.TTransportException

    Stack Trace: java.sql.SQLNonTransientConnectionException: org.apache.thrift.transport.TTransportException at org.apache.cassandra.cql.jdbc.CassandraConnection.(CassandraConnection.java:159) at org.apache.cassandra.cql.jdbc.CassandraDriver.connect(CassandraDriver.java:92) at com.itko.lisa.jdbc.JDBCNode.getConnection(JDBCNode.java:627) at com.itko.lisa.jdbc.JDBCNode.executeSQL(JDBCNode.java:370) at com.itko.lisa.jdbc.JDBCNodeEditor.doExec(JDBCNodeEditor.java:483) at com.itko.lisa.jdbc.JDBCNodeEditor$6.doCallback(JDBCNodeEditor.java:417) at com.itko.util.swing.panels.ProcessingDialog$2.run(ProcessingDialog.java:194) at java.lang.Thread.run(Unknown Source) Caused by: org.apache.thrift.transport.TTransportException at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:132) at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86) at org.apache.thrift.transport.TFramedTransport.readFrame(TFramedTransport.java:129) at org.apache.thrift.transport.TFramedTransport.read(TFramedTransport.java:101) at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86) at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429) at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318) at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219) at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:77) at org.apache.cassandra.thrift.Cassandra$Client.recv_describe_cluster_name(Cassandra.java:1247) at org.apache.cassandra.thrift.Cassandra$Client.describe_cluster_name(Cassandra.java:1235) at org.apache.cassandra.cql.jdbc.CassandraConnection.(CassandraConnection.java:130) ... 7 more



  • 2.  Re: I am unable to connect to Cassandra Database.

    Posted Oct 11, 2016 11:48 AM

    Hi Ajay, 

     

    What product are you using? I will move it to the correct sub-community category once you reply.

     

    Best regards,

    Taylor



  • 3.  Re: I am unable to connect to Cassandra Database.

    Broadcom Employee
    Posted Oct 11, 2016 12:52 PM

    What is the version of DevTest, Cassandra & Jdbc driver are you using?



  • 4.  Re: I am unable to connect to Cassandra Database.

    Posted May 08, 2017 06:29 PM

    I am using Devtest 9.1

    Driver: org.apache.cassandra.cql.jdbc.CassandraDriver

    Java 1.8



  • 5.  Re: I am unable to connect to Cassandra Database.

    Broadcom Employee
    Posted May 08, 2017 11:21 PM

    Do you have the driver jar in the  DEVTEST/lib/shared folder?  

     

    Required File(s): cassandra-driver.jar
    Java Driver Class: org.apache.cassandra.cql.jdbc.CassandraDriver
    URL: jdbc:cassandra://{HOST}:9160/{DB}
    Website: Cassandra (http://cassandra.apache.org/)

    Cassandra Drivers and URL (http://www.dbschema.com/cassandra-jdbc-driver.html)



  • 6.  Re: I am unable to connect to Cassandra Database.
    Best Answer

    Posted May 09, 2017 10:43 AM

    Agree with Shiney . You would need to download cassandra_driver and  place them in Devtest. 

     

    Driver: cassandra_driver.jar

    To execute as devtest’s JDBC connection use following parameter values. Use other parameter info as appropriate. Once jar is placed in devtest/Lib folder, restart /devtest.

    JDBC Driver: org.apache.cassandra.cql.jdbc.CassandraDriver

    Connection String: jdbc:cassandra://host:port/keyspace

     

    One way you can connect to Cassandra using Devtest– Execute Script ( JSR-223) step . Also you can directly connect using JDBC step as well. 

    //Import
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.SQLException;
    import java.sql.Statement;

    Connection con = null;
    try {
    //Classname
    Class.forName("org.apache.cassandra.cql.jdbc.CassandraDriver");
    //from Input parameters.

    //String node = testExec.getStateValue("host");
    //String port = testExec.getStateValue("port");
    //String keyspace = testExec.getStateValue("keyspace");
    //String query = testExec.getStateValue("query");

     

    //Build connection string
    String connectionString = "jdbc:cassandra://" + node + ":" + port + "/" + keyspace;

    //Database calls code

    write code for conn and execute query.

     

    }

     

    Hope this helps. 

    Thanks, 

    Rajeh k Singh