Improve behavior of tsearch_readline(), and remove t_readline().
Tom Lane <tgl@sss.pgh.pa.us>
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
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/tsearch/dict_thesaurus.c | modified | +0 −5 |
| src/backend/tsearch/ts_locale.c | modified | +28 −50 |
| src/include/tsearch/ts_locale.h | modified | +4 −3 |
Discussion
- Lift line-length limit for pg_service.conf 11 messages · 2020-09-21 → 2020-09-23