Bug creating vector from Solr index with TrieFields
---------------------------------------------------
Key: MAHOUT-546
URL: https://issues.apache.org/jira/browse/MAHOUT-546
Project: Mahout
Issue Type: Bug
Components: Utils
Affects Versions: 0.4
Reporter: G Fernandes
A Solr index with an Id field of type TrieLong causes NPE when trying to
extract vectors from the lucene index
Command line used:
../bin/mahout lucene.vector -d ~/solr/data/index/ -o vectors.vec -t d.dic -f
text -i articleId
where 'articleId' is a Stored numeric field declared as 'tlong' in Solr.
Output:
no HADOOP_HOME set, running locally
Nov 16, 2010 2:59:50 PM org.slf4j.impl.JCLLoggerAdapter info
INFO: Output File: moreover.vec
Nov 16, 2010 2:59:51 PM org.apache.hadoop.util.NativeCodeLoader <clinit>
WARNING: Unable to load native-hadoop library for your platform... using
builtin-java classes where applicable
Nov 16, 2010 2:59:51 PM org.apache.hadoop.io.compress.CodecPool getCompressor
INFO: Got brand-new compressor
Exception in thread "main" java.lang.NullPointerException
at java.io.DataOutputStream.writeUTF(DataOutputStream.java:330)
at java.io.DataOutputStream.writeUTF(DataOutputStream.java:306)
at org.apache.mahout.math.VectorWritable.write(VectorWritable.java:125)
at
org.apache.hadoop.io.serializer.WritableSerialization$WritableSerializer.serialize(WritableSerialization.java:90)
at
org.apache.hadoop.io.serializer.WritableSerialization$WritableSerializer.serialize(WritableSerialization.java:77)
at
org.apache.hadoop.io.SequenceFile$RecordCompressWriter.append(SequenceFile.java:1128)
at
org.apache.hadoop.io.SequenceFile$Writer.append(SequenceFile.java:977)
at
org.apache.mahout.utils.vectors.io.SequenceFileVectorWriter.write(SequenceFileVectorWriter.java:46)
at org.apache.mahout.utils.vectors.lucene.Driver.main(Driver.java:226)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
The problem is at class LuceneIteratable line 130:
name = indexReader.document(doc, idFieldSelector).get(idField);
It does not work with the way Solr stores numeric fields in the index.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.