You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nutch.apache.org by "Doğacan Güney (JIRA)" <ji...@apache.org> on 2008/10/02 11:35:44 UTC
[jira] Updated: (NUTCH-631) MoreIndexingFilter fails with
NoSuchElementException
[ https://issues.apache.org/jira/browse/NUTCH-631?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Doğacan Güney updated NUTCH-631:
--------------------------------
Priority: Blocker (was: Major)
I am promoting this to Blocker, because as of now, index-more is almost guaranteed to fail with an exception on any crawl.
> MoreIndexingFilter fails with NoSuchElementException
> ----------------------------------------------------
>
> Key: NUTCH-631
> URL: https://issues.apache.org/jira/browse/NUTCH-631
> Project: Nutch
> Issue Type: Bug
> Components: indexer
> Affects Versions: 1.0.0
> Environment: Verified on CentOS and OSX
> Reporter: Stefan Will
> Priority: Blocker
> Fix For: 1.0.0
>
>
> I did a simple crawl and started the indexer with the index-more plugin activated. The index job fails with the following stack trace in the task log:
> java.util.NoSuchElementException
> at java.util.TreeMap.key(TreeMap.java:433)
> at java.util.TreeMap.firstKey(TreeMap.java:287)
> at java.util.TreeSet.first(TreeSet.java:407)
> at java.util.Collections$UnmodifiableSortedSet.first(Collections.java:1114)
> at org.apache.nutch.indexer.more.MoreIndexingFilter.addType(MoreIndexingFilter.java:207)
> at org.apache.nutch.indexer.more.MoreIndexingFilter.filter(MoreIndexingFilter.java:90)
> at org.apache.nutch.indexer.IndexingFilters.filter(IndexingFilters.java:111)
> at org.apache.nutch.indexer.Indexer.reduce(Indexer.java:249)
> at org.apache.nutch.indexer.Indexer.reduce(Indexer.java:52)
> at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:333)
> at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:164)
> I traced this down to the part in MoreIndexingFilter where the mime type is split into primary type and subtype for indexing:
> contentType = mimeType.getName();
> String primaryType = mimeType.getSuperType().getName();
> String subType = mimeType.getSubTypes().first().getName();
> Apparently Tika does not have a subtype for text/html. Furthermore, the supertype for text/html is set as application/octet-stream, which I doubt is what we want indexed. Don't we want primaryType to be "text" and subType to be "html" ?
> So I changed the code to:
> contentType = mimeType.getName();
> String[] split = contentType.split("/");
> String primaryType = split[0];
> String subType = (split.length>1)?split[1]:null;
>
> This does what I think it should do, but perhaps I'm missing something ?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.