The current behavior of levenshtein(text,text,int,int,int) is wrong. Consider:
leki_dev=# select levenshtein('','a',2,4,5); levenshtein ------------- 1 (1 row) leki_dev=# select levenshtein('a','',2,4,5); levenshtein ------------- 1 (1 row) leki_dev=# select levenshtein('aa','a',2,4,5); levenshtein ------------- 1 (1 row) leki_dev=# select levenshtein('a','aa',2,4,5); levenshtein ------------- 1 (1 row) versus (after patch) postgres=# select levenshtein('','a',2,4,5); levenshtein ------------- 2 (1 row) postgres=# select levenshtein('a','',2,4,5); levenshtein ------------- 4 (1 row) postgres=# select levenshtein('aa','a',2,4,5); levenshtein ------------- 4 (1 row) postgres=# select levenshtein('a','aa',2,4,5); levenshtein ------------- 2 (1 row) patch attached. Greetings Marcin Mańk
levenshtein.diff
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers