A web site doc comment from user skong today points out a small issue around the sample INSTR function given in plpgsql-porting.html that I can't confirm (none of those dirty Oracle instances here today), but it sounds legit.

A look at Oracle's documentation on the INSTR function at http://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_functions_1103.htm says that the 3rd input, position to start searching, cannot be zero. skong says that Oracle will just return a 0 if you give it that invalid input.

The INSTR implementation in the docs will instead search backwards from the end of the string if you tell it to start at 0, same as if you gave it a negative input. I think it's therefore possible to get the plpgsql version to return a value in cases Oracle would instead return 0. Seems like a straightforward thing to confirm and change the sample to do differently; just have to add an explicit test for a 0 value of beg_index.


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to