OK , this should be a bug with JdbcDataSource. look at the line org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.hasnext(JdbcDataSource.java:326)
it is eating up the exception and logs error and goes back. I shall raise an issue thanks On Wed, Jun 24, 2009 at 11:12 PM, George<emagp...@gmail.com> wrote: > Hi, > Yesterday I found out the following exception trying to index from an Oracle > Database in my indexing process: > > 2009-06-23 14:57:29,205 WARN > [org.apache.solr.handler.dataimport.JdbcDataSource] Error reading data > java.sql.SQLException: ORA-01555: snapshot too old: rollback segment number > 1 with name "_SYSSMU1$" too small > > at > oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70) > at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:110) > at > oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:171) > at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455) > at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413) > at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1030) > at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:183) > at oracle.jdbc.driver.T4CStatement.fetch(T4CStatement.java:1000) > at > oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:314) > at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:228) > at > org.jboss.resource.adapter.jdbc.WrappedResultSet.next(WrappedResultSet.java:1184) > at > org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.hasnext(JdbcDataSource.java:326) > at > org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.access$700(JdbcDataSource.java:223) > at > org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator$1.hasNext(JdbcDataSource.java:258) > at > org.apache.solr.handler.dataimport.EntityProcessorBase.getNext(EntityProcessorBase.java:73) > at > org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73) > at > org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper.java:231) > at > org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:335) > at > org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:224) > at > org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:167) > at > org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:316) > at > org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:374) > at > org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:355) > 2009-06-23 14:57:29,206 INFO > [org.apache.solr.handler.dataimport.DocBuilder] Full Import completed > successfully > 2009-06-23 14:57:29,206 INFO [org.apache.solr.update.UpdateHandler] start > commit(optimize=true,waitFlush=false,waitSearcher=true) > > As you can see, Full Import completed successfully indexing a part (about > 70000) of all expected documents (about 150000). I don't know if it is a bug > or not but certainly it's not the behaviour I expect in this situation. It > should have rolled back, shouldn't it? > > Reading Solr code I can see that in line 314 of JdbcDataSource.java it > throws a DataImportHandlerException with SEVERE errCode so I can't > understand why my indexing process finishes correctly. > > I'm working with Solr trunk version (rev. 785397) and no custom properties > (i.e. onError value is default 'abort') in DataImportHandler. > > George > -- ----------------------------------------------------- Noble Paul | Principal Engineer| AOL | http://aol.com