Hi Ilya,

Tried executing SQL statement - 'SET STREAMING ON' from code, but this
produces an exception.

Here is my table definition:

CREATE TABLE public.test_data (
  pk LONG, id LONG, k VARCHAR, v VARCHAR,  PRIMARY KEY (pk, id))
  WITH "TEMPLATE=PARTITIONED, BACKUPS=1, ATOMICITY=TRANSACTIONAL,
WRITE_SYNCHRONIZATION_MODE=FULL_SYNC, AFFINITY_KEY=id";

CREATE INDEX test_data_id_k_v ON public.test_data (id, k, v);
CREATE INDEX test_data_k_id_v ON public.test_data (k, id, v);
CREATE INDEX test_data_k_v_id ON public.test_data (k, v, id);
CREATE INDEX test_data_id ON public.test_data (id);
CREATE INDEX test_data_k ON public.test_data (k);
CREATE INDEX test_data_v ON public.test_data (v);
CREATE INDEX test_data_k_v ON public.test_data (k, v);

Here is my code:

    public static void streamTestData() throws Exception {

        Connection dbConnection = null;
        PreparedStatement statement = null;

        String insertTableSQL = "INSERT INTO test_data (pk, id, k, v) VALUES
(?, ?, ?, ?)";
        try {
            
            Class.forName("org.apache.ignite.IgniteJdbcDriver");
            dbConnection = DriverManager.getConnection(
                   
"jdbc:ignite:cfg://cache=DATASTORE:streaming=true:streamingFlushFrequency=1000@file:///home/me/ignite-jdbc-client.xml",
                    "", "");
            dbConnection.setSchema("PUBLIC");

            statement = dbConnection.prepareStatement(insertTableSQL);
            int pk = 0;
            for (int id = 0; id < 10000; id ++) {

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.cust.first_name");
                statement.setString(4, pk % 2 == 0 ? "Joe" : "Mary");
                statement.executeUpdate();

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.cust.last_name");
                statement.setString(4, pk % 2 == 0 ? "Smythe" : "Pearson");
                statement.executeUpdate();

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.cust.email");
                statement.setString(4, pk % 2 == 0 ? "[email protected]" :
"[email protected]");
                statement.executeUpdate();

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.cust.gender");
                statement.setString(4, pk % 2 == 0 ? "Male" : "Female");
                statement.executeUpdate();

                long now = System.currentTimeMillis();

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.date");
                statement.setString(4, "201" + String.valueOf(now % 10) +
"-12-0" + String.valueOf(pk % 10));
                statement.executeUpdate();

                statement.setInt(1, ++pk);
                statement.setInt(2, id);
                statement.setString(3, "trans.amount");
                statement.setString(4, String.valueOf((now % 1000000) + 1));
                statement.executeUpdate();
            }
        } catch (Exception e) {
            e.printStackTrace(System.err);
        } finally {

            if (statement != null) {
                statement.close();
            }

            if (dbConnection != null) {
                dbConnection.close();
            }
        }
    }




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to