You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Grant Ingersoll (JIRA)" <ji...@apache.org> on 2007/08/16 04:09:30 UTC

[jira] Commented: (LUCENE-980) Formatting error in ReportTask in contrib/benchmark

    [ https://issues.apache.org/jira/browse/LUCENE-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12520135 ] 

Grant Ingersoll commented on LUCENE-980:
----------------------------------------

Or the padding could be extended

> Formatting error in ReportTask in contrib/benchmark
> ---------------------------------------------------
>
>                 Key: LUCENE-980
>                 URL: https://issues.apache.org/jira/browse/LUCENE-980
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: contrib/benchmark
>    Affects Versions: 2.2
>            Reporter: Grant Ingersoll
>            Assignee: Grant Ingersoll
>            Priority: Minor
>             Fix For: 2.3
>
>
> I am building a new Task, AnalyzerTask, that lets you change the Analyzer in the loop, thus allowing for the comparison of the same Analyzers over the set of documents.
> My algorithm declaration looks like:
> NewAnalyzer(WhitespaceAnalyzer, SimpleAnalyzer, StopAnalyzer, standard.StandardAnalyzer)
> And it could be longer.
> The exception is:
> Error: cannot execute the algorithm! String index out of range: 85
> java.lang.StringIndexOutOfBoundsException: String index out of range: 85
> 	at java.lang.String.substring(String.java:1765)
> 	at org.apache.lucene.benchmark.byTask.utils.Format.format(Format.java:85)
> 	at org.apache.lucene.benchmark.byTask.tasks.ReportTask.tableTitle(ReportTask.java:85)
> 	at org.apache.lucene.benchmark.byTask.tasks.ReportTask.genPartialReport(ReportTask.java:140)
> 	at org.apache.lucene.benchmark.byTask.tasks.RepSumByNameTask.reportSumByName(RepSumByNameTask.java:77)
> 	at org.apache.lucene.benchmark.byTask.tasks.RepSumByNameTask.doLogic(RepSumByNameTask.java:39)
> 	at org.apache.lucene.benchmark.byTask.tasks.PerfTask.runAndMaybeStats(PerfTask.java:83)
> 	at org.apache.lucene.benchmark.byTask.tasks.TaskSequence.doSerialTasks(TaskSequence.java:112)
> 	at org.apache.lucene.benchmark.byTask.tasks.TaskSequence.doLogic(TaskSequence.java:93)
> 	at org.apache.lucene.benchmark.byTask.utils.Algorithm.execute(Algorithm.java:228)
> 	at org.apache.lucene.benchmark.byTask.Benchmark.execute(Benchmark.java:73)
> 	at org.apache.lucene.benchmark.byTask.Benchmark.main(Benchmark.java:109)
> The error seems to be caused by the fact that ReportTask uses the OP (operation) column for the String, but then uses the length of the algorithm declaration to index into the String, resulting in the index out of bounds exception.
> The line in question is:
> return (s + padd).substring(0, col.length());
> And probably should be changed to something like:
>     String s1 = (s + padd);
>     return s1.substring(0, Math.min(col.length(), s1.length()));
> Either that or the column should be trimmed.  The workaround is to explicitly name the task.
> If no objections, I will make the change, tomorrow.  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org