[ 
https://issues.apache.org/jira/browse/LANG-936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Henri Yandell closed LANG-936.
------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: Review Patch)
                   3.3

Thanks Yanix + Eli :)

svn ci -m "Applying Eli Lindsey's patch to Yaniv Kunda's report in LANG-936 
that StringUtils.getLevensteinDistance(String, String, int) gave the wrong 
answer when the int threshold is near Integer.MAX_VALUE" .
Sending        src/changes/changes.xml
Sending        src/main/java/org/apache/commons/lang3/StringUtils.java
Sending        src/test/java/org/apache/commons/lang3/StringUtilsTest.java
Transmitting file data ...
Committed revision 1560275.

> StringUtils.getLevenshteinDistance with too big of a threshold returns wrong 
> result
> -----------------------------------------------------------------------------------
>
>                 Key: LANG-936
>                 URL: https://issues.apache.org/jira/browse/LANG-936
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.*
>    Affects Versions: 3.1
>            Reporter: Yaniv Kunda
>            Priority: Minor
>             Fix For: 3.3
>
>
> StringUtils.getLevenshteinDistance(CharSequence s, CharSequence t, int 
> threshold) specifies:
> {quote}
> {{Find the Levenshtein distance between two Strings if it's _+*less than or 
> equal to*+_ a given threshold.}}
> {quote}
> When passing a threshold > *Integer.MAX_VALUE - max(s.length(), t.length())* 
> the method always returns -1.
> The simplest use case is passing *Integer.MAX_VALUE* (a common practice if 
> one would want to find the min/max LD of a string to several other strings in 
> an iterative fashion.
> The code should be fixed to consider the threshold in relation to the 
> source/target lengths, or alternatively the javadoc should be fixed to 
> pronounce the current limit.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to