[
https://issues.apache.org/jira/browse/MAHOUT-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17156487#comment-17156487
]
Shashanka Balakuntala Srinivasa commented on MAHOUT-2096:
---------------------------------------------------------
Hi [~MaxsLi], I want to work on the fix for this. I had one quick question,
what should we do when iterator.next return null... Should we log something or
just check if next exists then only we should write and skip else part?
> next() Called On Possible Empty iterator()
> ------------------------------------------
>
> Key: MAHOUT-2096
> URL: https://issues.apache.org/jira/browse/MAHOUT-2096
> Project: Mahout
> Issue Type: Bug
> Components: Algorithms
> Reporter: Shangru Li
> Priority: Minor
> Labels: easyfix, newbie
>
> Consider this function:
> {code}
> protected void reduce ( VarIntWritable index, Iterable<VarLongWritable> ids,
> Context
> ctx) throws IOException, InterruptedException {
> ctx.write(index, ids.iterator().next());
> }
> {code}
> The line `_ctx.write(index, ids.iterator().next());_` does not check for
> empty iterator when calling the next() function, which could result in an
> exception.
> Function can be found on the GitHub repository
> [here|https://github.com/apache/mahout/blob/754068bc3ac62bcf4b9b656cd4a6f413b29b18df/community/mahout-mr/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java#L395].
> Line 395, in file
> _/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java_
--
This message was sent by Atlassian Jira
(v8.3.4#803005)