ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vio Stan" <VS...@cihi.ca>
Subject java.sql.BatchUpdateException: ORA-01000: maximum open cursors exceeded
Date Wed, 23 Nov 2005 20:29:04 GMT
Hello
 
I have to load, process and save arround 100,000 rows.
In order to do this I set a batch size to 1000 (can increase or decrease
this value) so I process, for example 100 times x 1000 records.
So, in one operation I have to save, let say, 1000 records. In order to
do this I use batches with IBatis.
 
I get the "java.sql.BatchUpdateException: ORA-01000: maximum open
cursors exceeded" exception when I try to save.
 
My code is something like this
 
...................
  SqlMapClient sqlMap = MyAppSqlConfig_Output.getSqlMapInstance(); 
        try
        {
            sqlMap.startTransaction();
            sqlMap.startBatch();
....................
              // this is generated from a loop 
             { 
              sqlMap.insert("insert1", hm1);  //hm1 is a HashMap 
              sqlMap.insert("insert2", hm2); 
              sqlMap.insert("insert3", hm3);  
.....................
              sqlMap.insert("insert1000", hm1000);  
              }
 
        int fromExecutebatch = sqlMap.executeBatch();
        sqlMap.commitTransaction();
     }
      catch (Exception e)
      {
           e.printStackTrace(System.out);
           log.error(e);
      }
      finally
      {    
        sqlMap.endTransaction();
        ........................
      }
 
Pls. help!
Thanks,
Vio

           

Mime
View raw message