Re: ISN extension bug? (with patch) - Mailing list pgsql-hackers

From Fabien COELHO
Subject Re: ISN extension bug? (with patch)
Date
Msg-id alpine.DEB.2.10.1312220806210.7034@sto
Whole thread Raw
In response to ISN extension bug?  (Fabien COELHO <coelho@cri.ensmp.fr>)
Responses Re: ISN extension bug? (with patch)
List pgsql-hackers
> sh> psql
> psql (9.3.2)
> Type "help" for help.
> # CREATE EXTENTION isn;
> # SELECT ISMN 'M123456782';
>  M-1234-5678-5
> # SELECT ISMN 'M123456785';
> ERROR:  invalid check digit for ISMN number: "M123456785", should be 2
> LINE 1: SELECT ISMN 'M123456785';

With the attached one liner patch compiled with pgxs:
 # SELECT ISMN 'M123456785';  M-1234-5678-5

I'm not sure whether the policy is to update the version number of the 
extension for such a change. As the library is always "isn.so", two 
versions cannot live in parallel anyway. If it is useful, the second patch 
attached also upgrade the version number.

Also, I notice that there is no test for this module, so I do not know 
whether I've broken anything, or whether there are other simular bugs.
ISTM that it is not the case because I could test other types.

Because of the complexity of the code (there are embedded automata with 
plenty of gotos and pointer arithmetic), I find this astoundingly unwise. 
If the code was cleaner/simpler, it would just find it very unwise:-) Thus 
I would suggest to add to some todo list: "check that all extensions have 
regression tests, and add some if not."

-- 
Fabien.

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: SQL objects UNITs
Next
From: Fujii Masao
Date:
Subject: Re: ALTER SYSTEM SET command to change postgresql.conf parameters