Re: contrib/levenshtein() has a bug?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Ben <bench(at)silentmedia(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: contrib/levenshtein() has a bug?
Date: 2006-09-28 21:19:26
Message-ID: 5739.1159478366@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-patches

Ben <bench(at)silentmedia(dot)com> writes:
> The levenshtein function from contrib/fuzzystrmatch.sql has a max arg
> length of 255. OK, that's cool. But check this out:

> mbrainz_db=> select max(length(name)) from public.track;
> max
> -----
> 255
> (1 row)

> mbrainz_db=> select levenshtein(name,'foo') from public.track;
> ERROR: argument exceeds max length: 255

> That seems odd.

length() measures in characters whereas the limit in question is being
enforced in bytes. You got any multibyte characters in there?

(It looks to me like levenshtein() is utterly non-multibyte-aware,
which is probably a bug in itself.)

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Geoffrey 2006-09-28 21:21:26 Re: continued segmentation fault
Previous Message Martijn van Oosterhout 2006-09-28 19:37:07 Re: contrib/levenshtein() has a bug?

Browse pgsql-patches by date

  From Date Subject
Next Message David Fetter 2006-09-28 21:21:19 Re: [HACKERS] Numeric overflow problem + patch
Previous Message David Fetter 2006-09-28 21:19:10 Re: [HACKERS] Numeric overflow problem + patch