2013-03-28 25 views
0

我想通過/ dataimport?command = full-import導入數據庫。這裏是(我的理解是)的相關信息:Solr DataImport「無法執行查詢」

使用的Solr的Tomcat6 上的Xubuntu 12.04 我通過apt-get安裝的Solr-tomcat的 我的Solr通過服務運行的tomcat6啓動

Solr的最初安裝的Solr規範版本:3.6.1.2012.09.06.10.36.26 Solr的實現版本:3.6.1 Debian的 - buildd - 2012-09-06十點36分26秒 Lucene的規範版本:3.6.1 Lucene的實現版本:3.6.1 debian - buildd - 2012-09-06 10:34:37 當前時間:星期四三月28 14:13:45 PDT 2013 服務器啓動時間:星期四3月28日13:4 1:30 PDT 2013

我的數據-config.xml中:

<dataConfig> 
    <dataSource type="JdbcDataSource" 
     driver="org.postgresql.Driver" 
     url="jdbc:postgresql://<ip>:<port>;databaseName=<myDB>" 
     user="<user>" 
     password="<password>" 
     readOnly="True"/> 

    <document> 
     <entity name="library" query="<query that works everywhere but via solr for 'id' and 'value'>"> 
     <field column="id" name="id" /> 
     <field column="value" name="title" /> 
     </entity> 
    </document> 
    </dataConfig> 

登錄:

Mar 28, 2013 1:41:36 PM org.apache.solr.common.SolrException log 
    SEVERE: Full Import failed:java.lang.RuntimeException: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: SELECT id, value FROM pg_evergreen.metabib.title_field_entry Processing Document # 1 
     at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:264) 
     at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:375) 
     at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:445) 
     at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:426) 
    Caused by: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: SELECT id, value FROM pg_evergreen.metabib.title_field_entry Processing Document # 1 
     at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:621) 
     at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:327) 
     at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:225) 
     ... 3 more 
    Caused by: org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: SELECT id, value FROM pg_evergreen.metabib.title_field_entry Processing Document # 1 
     at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:72) 
     at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:253) 
     at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210) 
     at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39) 
     at org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery(SqlEntityProcessor.java:59) 
     at org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73) 
     at org.apache.solr.handler.dataimport.EntityProcessorWrapper.pullRow(EntityProcessorWrapper.java:330) 
     at org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper.java:296) 
     at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:683) 
     at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:619) 
     ... 5 more 
    Caused by: java.lang.NullPointerException 
     at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:241) 
     ... 13 more 

    Mar 28, 2013 1:41:36 PM org.apache.solr.update.DirectUpdateHandler2 rollback 
    INFO: start rollback 
    Mar 28, 2013 1:41:36 PM org.apache.solr.update.DirectUpdateHandler2 rollback 
    INFO: end_rollback 

我曾嘗試:BATCHSIZE的

  • 變化(從-1到1000),readTimeout(從60000到120000)和ReadOnly在data-config.xml中
  • 創建一個將先前給予「警告」(如建議here及以後)
  • 保險查詢文件和文件夾的作品數量這個實例外,我所有的數據庫信息是準確的
  • 一派,都試過了(似乎婉轉有用)從第3頁搜索「‘無法執行查詢’dataimport」
  • 重新安裝和重新校準的Solr幾次,試圖用碼頭和JBoss一起運行各種版本的Solr

爲什麼dataimport任何想法時無法執行我的查詢?

+0

您希望返回多少條記錄?如果您認爲這是一個數量問題,請嘗試爲查詢添加一個限制,以查看查詢是否正常工作。 –

+0

有趣的想法...只是試圖用「SELECT ID,值與pg_evergreen.metabib.title_field_entry WHERE ID = 5571910」具有相同的結果:「無法執行查詢」(它應該已經返回單個項目) – dajaconnor

+0

不知道是否是一個字符串構造問題,也許反引號和值?或值可能是solr的保留關鍵字。另外,請檢查您是否可以使用solr正在運行的box/user中的user/pw連接到數據庫,以確保它不是連接問題。 –

回答

1

至於建議的arun,我改變了我的URL語法url="jdbc:postgresql://<IP>:<PORT>/<DATABASE>和它的工作!