From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Improve behavior of tsearch_readline(), and remove t_readline(). |
Date: | 2020-09-24 00:27:04 |
Message-ID: | E1kLF6G-0003RZ-96@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Improve behavior of tsearch_readline(), and remove t_readline().
Commit fbeb9da22, which added the tsearch_readline APIs, left
t_readline() in place as a compatibility measure. But that function
has been unused and deprecated for twelve years now, so that seems
like enough time to remove it. Doing so, and merging t_readline's
code into tsearch_readline, aids in making several useful
improvements:
* The hard-wired 4K limit on line length in tsearch data files is
removed, by using a StringInfo buffer instead of a fixed-size buffer.
* We can buy back the per-line palloc/pfree added by 3ea7e9550
in the common case where encoding conversion is not required.
* We no longer need a separate pg_verify_mbstr call, as that
functionality was folded into encoding conversion some time ago.
(We could have done some of this stuff while keeping t_readline as a
separate API, but there seems little point, since there's no reason
for anyone to still be using t_readline directly.)
Discussion: https://postgr.es/m/48A4FA71-524E-41B9-953A-FD04EF36E2E7@yesql.se
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/83b61319a16ceabc7ea7d1143dcc045826c112d2
Modified Files
--------------
src/backend/tsearch/dict_thesaurus.c | 5 ---
src/backend/tsearch/ts_locale.c | 78 +++++++++++++-----------------------
src/include/tsearch/ts_locale.h | 7 ++--
3 files changed, 32 insertions(+), 58 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2020-09-24 14:39:16 | pgsql: Doc: sync lobj.sgml's copy of testlo.c with the latter file. |
Previous Message | Thomas Munro | 2020-09-23 22:43:20 | pgsql: Fix missing fsync of SLRU directories. |