diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2018-01-10 17:13:29 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2018-01-10 17:13:29 -0500 |
commit | 10bcd4165aff91fd8c0e365d74e27105d3a35223 (patch) | |
tree | 994a1c0e6733416a6b26a473d17f6f8ab4c5e026 /src/backend/access/gist/gistbuildbuffers.c | |
parent | 38a23790e13c84446b55cb0f7028c9da67c361e3 (diff) | |
download | postgresql-10bcd4165aff91fd8c0e365d74e27105d3a35223.tar.gz postgresql-10bcd4165aff91fd8c0e365d74e27105d3a35223.zip |
Fix sample INSTR() functions in the plpgsql documentation.
These functions are stated to be Oracle-compatible, but they weren't.
Yugo Nagata noticed that while our code returns zero for a zero or
negative fourth parameter (occur_index), Oracle throws an error.
Further testing by me showed that there was also a discrepancy in the
interpretation of a negative third parameter (beg_index): Oracle thinks
that a negative beg_index indicates the last place where the target
substring can *begin*, whereas our code thinks it is the last place
where the target can *end*.
Adjust the sample code to behave like Oracle in both these respects.
Also change it to be a CDATA[] section, simplifying copying-and-pasting
out of the documentation source file. And fix minor problems in the
introductory comment, which wasn't very complete or accurate.
Back-patch to all supported branches. Although this patch only touches
documentation, we should probably call it out as a bug fix in the next
minor release notes, since users who have adopted the functions will
likely want to update their versions.
Yugo Nagata and Tom Lane
Discussion: https://postgr.es/m/20171229191705.c0b43a8c.nagata@sraoss.co.jp
Diffstat (limited to 'src/backend/access/gist/gistbuildbuffers.c')
0 files changed, 0 insertions, 0 deletions