Hi - My dataconfig.xml looks as follows.
<dataConfig> <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://myhost/mydb" user="username" password="password" /> <document name="user"> <entity name="user" query="select user_id, firstname from user where user_id < 5"> <field column="USER_ID" name="id" /> <field column="FIRSTNAME" name="firstname_s" /> </entity> </document> </dataConfig> When I do a full-import with this revised schema ( where the primary key of the table is not id , but user_id ), I am getting the following error. WARNING: Error creating document : SolrInputDocument[{}] org.apache.solr.common.SolrException: Document [null] missing required field: id at org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:292) at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:59) at org.apache.solr.handler.dataimport.SolrWriter.upload(SolrWriter.java:70) at org.apache.solr.handler.dataimport.DataImportHandler$1.upload(DataImportHandler.java:275) at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:328) at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:183) at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:134) at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:323) at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:385) I am trying to understand this since I had defined a mapping for a field above as < field column="USER_ID" name="id" /> . Any idea - what is missing here for the indexing. Also - why would Document [null] be null since my query does give appropriate results.