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/

Reply via email to