2017-03-31 3 views
0

J'essaie d'importer des données d'Apache Solr à Datastax Solr en utilisant DIH. Je suis en mesure d'extraire le document, mais quand Dih essaie de créer le document que je reçois l'erreur ci-dessous dans les champs de date:Importer des données Apache Solr à Datastax Solr - Transformateur DateFormat DIH

org.apache.solr.common.SolrException: Invalid Date String:'Thu Jun 08 16:23:00 PDT 2017' 
at org.apache.solr.schema.DateField.parseMath(DateField.java:182) 
at com.datastax.bdp.search.solr.core.types.V1TypeMapper.formatToCassandraType(V1TypeMapper.java:166) 
at com.datastax.bdp.search.solr.core.types.V2TypeMapper.formatToCassandraType(V2TypeMapper.java:101) 
at com.datastax.bdp.search.solr.Cql3CassandraRowWriter.write(Cql3CassandraRowWriter.java:170) 
at com.datastax.bdp.search.solr.handler.update.CassandraDirectUpdateHandler.addDoc(CassandraDirectUpdateHandler.java:161) 
at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:69) 
at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:51) 
at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:595) 
at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:435) 
at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:51) 
at org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProcessor.processAdd(AbstractDefaultValueUpdateProcessorFactory.java:94) 
at org.apache.solr.handler.dataimport.SolrWriter.upload(SolrWriter.java:70) 
at org.apache.solr.handler.dataimport.DataImportHandler$1.upload(DataImportHandler.java:235) 
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:504) 
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:408) 
at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:323) 
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:231) 
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:411) 
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:476) 
at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:457) 

J'utilise le transformateur DateFormat dans mon DIH, mais il semble y avoir aucun effet sur elle . Le transformateur DateFormat transforme les fichiers de date d'Apache Solr au format spécifié dans 'dateTimeFormat' avant de créer le document à indexer dans Datastax Solr.

<dataConfig> 
    <document> 
    <entity name="sep_byOrderNumber" processor="SolrEntityProcessor" query="OrderNumber:${dataimporter.request.OrderNumberList}" rows="${dataimporter.request.batchSize}" url="${dataimporter.request.urlSource}" transformer="DateFormatTransformer" loglevel="debug"> 
     <field column="OrderCreateDate" dateTimeFormat="yyyy-MM-dd'T'HH:mm:ss.SSSZ" /> 
    </entity> 
    </document> 
</dataconfig> 

Quelqu'un peut-il aider à identifier le problème?

Répondre

0

Changer votre DateTimeFormat à: EEE MMM dd HH:mm:ss z yyyy

Letter Date or Time Component    Presentation Examples 
y  Year        Year   1996; 96 
M  Month in year (context sensitive) Month  July; Jul; 07 
d  Day in month      Number  10 
E  Day name in week     Text   Tuesday; Tue 
H  Hour in day (0-23)     Number  0 
m  Minute in hour      Number  30 
s  Second in minute     Number  55 
z  Time zone       Time zone Pacific Standard Time; PST; GMT-08:00 

Source: http://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html

+0

Merci, mais je suis face à toujours la même erreur. Mon modifié dih-config.xml est comme ci-dessous: ' Preethi

+0

Avez-vous rajoutez le noyau ou redémarrez solr et essayez de réindexer les données? –

+0

J'ai déployé la nouvelle configuration de dih, rechargé le noyau et commencé l'importation de dih. Il a récupéré les documents, mais n'a pas réussi à indexer ou traiter ou ignorer en raison d'une erreur ci-dessus. – Preethi