Hello! I can observe this problem with this reproducer on 2.7. I will try to investigate more and file a ticket.
Regards,+ -- Ilya Kasnacheev чт, 17 янв. 2019 г. в 16:14, yangjiajun <[email protected]>: > Hello. > > Please try this loop: > for(int i=0;i<10;i++){ > System.out.println(i); > initData(); > overwriteData(); > } > > And here is my config file: > example-default12.xml > < > http://apache-ignite-users.70518.x6.nabble.com/file/t2059/example-default12.xml> > > > It is harder to reproduce this issue in 2.7 than 2.6.But the exception does > appear. > > > ilya.kasnacheev wrote > > Hello! > > > > I have ran your code several times and not encountered this problem. Can > > you make a new reproducer which will show it (semi)reliably? > > > > Regards, > > -- > > Ilya Kasnacheev > > > > > > чт, 17 янв. 2019 г. в 05:18, yangjiajun < > > > 1371549332@ > > >>: > > > >> Hello. > >> > >> Thanks for reply.Unfortunately,I still get the exception after running > my > >> test on 2.7 for several times. > >> > >> > >> ilya.kasnacheev wrote > >> > Hello! > >> > > >> > I can reproduce this problem, but then again, it does not seem to > >> > reproduce > >> > on 2.7. Have you considered upgrading? > >> > > >> > Regards, > >> > -- > >> > Ilya Kasnacheev > >> > > >> > > >> > ср, 16 янв. 2019 г. в 14:14, yangjiajun < > >> > >> > 1371549332@ > >> > >> >>: > >> > > >> >> Hello. > >> >> > >> >> I do test on a ignite 2.6 node with persistence enabled and get an > >> >> exception: > >> >> > >> >> Exception in thread "main" java.sql.BatchUpdateException: class > >> >> org.apache.ignite.IgniteCheckedException: Data streamer has been > >> closed. > >> >> at > >> >> > >> >> > >> > org.apache.ignite.internal.jdbc.thin.JdbcThinConnection$StreamState.readResponses(JdbcThinConnection.java:1017) > >> >> at java.lang.Thread.run(Unknown Source) > >> >> > >> >> Here is my test code: > >> >> > >> >> import java.sql.Connection; > >> >> import java.sql.DriverManager; > >> >> import java.sql.PreparedStatement; > >> >> import java.sql.SQLException; > >> >> import java.util.Properties; > >> >> > >> >> /** > >> >> * test insert data in streaming mode > >> >> * */ > >> >> public class InsertStreamingMode { > >> >> > >> >> private static Connection conn; > >> >> > >> >> public static void main(String[] args) throws Exception { > >> >> > >> >> initialize(); > >> >> > >> >> close(); > >> >> } > >> >> > >> >> public static void close() throws Exception { > >> >> conn.close(); > >> >> } > >> >> > >> >> public static void initialize() throws Exception { > >> >> > >> Class.forName("org.apache.ignite.IgniteJdbcThinDriver"); > >> >> final String dbUrl = > >> >> > >> >> > >> > "jdbc:ignite:thin://ip:port;lazy=true;skipReducerOnUpdate=true;replicatedOnly=true"; > >> >> final Properties props = new Properties(); > >> >> conn = DriverManager.getConnection(dbUrl, props); > >> >> initData(); > >> >> overwriteData(); > >> >> } > >> >> > >> >> private static void initData() throws SQLException{ > >> >> > >> >> long start=System.currentTimeMillis(); > >> >> conn.prepareStatement("SET STREAMING ON > >> ALLOW_OVERWRITE > >> >> ON").execute(); > >> >> > >> >> String sql="insert INTO city1(id,name,name1) > >> >> VALUES(?,?,?)"; > >> >> PreparedStatement ps=conn.prepareStatement(sql); > >> >> for(int i=0;i<1600000;i++){ > >> >> String s1=String.valueOf(Math.random()); > >> >> String s2=String.valueOf(Math.random()); > >> >> ps.setInt(1, i); > >> >> ps.setString(2, s1); > >> >> ps.setString(3, s2); > >> >> ps.execute(); > >> >> } > >> >> conn.prepareStatement("set streaming off").execute(); > >> >> long end=System.currentTimeMillis(); > >> >> System.out.println(end-start); > >> >> } > >> >> > >> >> private static void overwriteData() throws SQLException{ > >> >> > >> >> long start=System.currentTimeMillis(); > >> >> conn.prepareStatement("SET STREAMING ON > >> ALLOW_OVERWRITE > >> >> ON").execute(); > >> >> > >> >> String sql="insert INTO city1(id,name,name1) > >> >> VALUES(?,?,?)"; > >> >> PreparedStatement ps=conn.prepareStatement(sql); > >> >> for(int i=0;i<1600000;i++){ > >> >> String s1="test"; > >> >> String s2="test"; > >> >> ps.setInt(1, i); > >> >> ps.setString(2, s1); > >> >> ps.setString(3, s2); > >> >> ps.execute(); > >> >> } > >> >> conn.prepareStatement("set streaming off").execute(); > >> >> long end=System.currentTimeMillis(); > >> >> System.out.println(end-start); > >> >> } > >> >> } > >> >> > >> >> Here is the table: > >> >> CREATE TABLE city1(id LONG PRIMARY KEY, name VARCHAR,name1 VARCHAR) > >> WITH > >> >> "template=replicated" > >> >> > >> >> The exception occurs on overwriteData method. > >> >> > >> >> > >> >> > >> >> -- > >> >> Sent from: http://apache-ignite-users.70518.x6.nabble.com/ > >> >> > >> > >> > >> > >> > >> > >> -- > >> Sent from: http://apache-ignite-users.70518.x6.nabble.com/ > >> > > > > > > -- > Sent from: http://apache-ignite-users.70518.x6.nabble.com/ >
