Important
The SingleStore 9.1 release candidate (RC) is available now. It will be promoted to general availability (GA) soon and at that time it will be renamed to SingleStore 10.
In the interim, SingleStore 9.1 RC can be used to preview, evaluate, and provide feedback on the new and upcoming features in SingleStore 10, while SingleStore 9.0 is recommended for production workloads.
Java
Dependencies
-
JDBC library (package
libmysql-javaon Debian-based distributions)
Code
import java.sql.*;import java.util.Properties;import java.util.concurrent.*;public class Sample {private static final String dbClassName = "com.singlestore.jdbc.Driver";private static final String CONNECTION = "jdbc:singlestore://127.0.0.1:3306/";private static final String USER = "root";private static final String PASSWORD = "";private static void executeSQL(Connection conn, String sql) throws SQLException {try (Statement stmt = conn.createStatement()) {stmt.execute(sql);}}private static void ResetEnvironment() throws SQLException {Properties p = new Properties();p.put("user", USER);p.put("password", PASSWORD);try (Connection conn = DriverManager.getConnection(CONNECTION, p)) {for (String query: new String[] {"DROP DATABASE IF EXISTS test","CREATE DATABASE test","USE test","CREATE TABLE tbl (id INT AUTO_INCREMENT PRIMARY KEY)"}) {executeSQL(conn, query);}}}private static void worker() {Properties properties = new Properties();properties.put("user", USER);properties.put("password", PASSWORD);try (Connection conn = DriverManager.getConnection(CONNECTION, properties)) {executeSQL(conn, "USE test");while (!Thread.interrupted()) {executeSQL(conn, "INSERT INTO tbl VALUES (NULL)");}} catch (SQLException e) {e.printStackTrace();}}public static void main(String[] args) throws ClassNotFoundException, SQLException, InterruptedException {Class.forName(dbClassName);ResetEnvironment();ExecutorService executor = Executors.newFixedThreadPool(20);for (int i = 0; i < 20; i++) {executor.submit(new Runnable() {@Overridepublic void run() {worker();}});}Thread.sleep(20000);executor.shutdownNow();if (!executor.awaitTermination(5, TimeUnit.SECONDS)) {System.err.println("Pool did not terminate");}}}
Last modified: