Ich möchte eine CSV-Datei mit dem Solr-Handler analysieren. Das Problem besteht darin, dass meine Datei problematische Zeilen enthalten kann (diese Zeilen können unskapierte Encaptulatoren enthalten). Wenn Solr eine solche Linie findet, schlägt mit der folgenden Meldung und stopptÜberspringen fehlerhafter Zeilen bei der Verwendung von Solrs csv-Handler
<str name="msg">CSVLoader: input=null, line=1941,can't read line: 1941
values={NO LINES AVAILABLE}</str><int name="code">400</int>
ich, dass der Parser in diesem Fall verstehe nicht die problematische Zeile beheben und diese ok für me.I möchte nur die fehlerhafte Zeile überspringen und mit dem Rest der Datei.
Ich versuchte mit der TolerantUpdateProcessorFactory in meiner Prozessor-Kette, aber das Ergebnis war das gleiche.
Ich benutze solr 6.5.1 und der curl Befehl, ich versuche, ist so etwas wie diese
curl '<path>/update?update.chain=tolerant&maxErrors=10&commit=true&fieldnames=<my fields are provided>,&skipLines=1' --data-binary @my_file.csv -H 'Content-type:application/csv'
Schließlich ist das, was ich in meinem solrconfig.xml
setzte<updateRequestProcessorChain name="tolerant">
<processor class="solr.TolerantUpdateProcessorFactory">
<int name="maxErrors">10</int>
</processor>
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>