1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
8
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
10
HREF="mailto:pgsql-docs@postgresql.org"><LINK
12
TITLE="PostgreSQL 9.3beta1 Documentation"
13
HREF="index.html"><LINK
15
TITLE="Additional Supplied Modules"
16
HREF="contrib.html"><LINK
19
HREF="test-parser.html"><LINK
22
HREF="unaccent.html"><LINK
25
HREF="stylesheet.css"><META
26
HTTP-EQUIV="Content-Type"
27
CONTENT="text/html; charset=ISO-8859-1"><META
29
CONTENT="2013-05-06T21:00:50"></HEAD
35
SUMMARY="Header navigation table"
47
>PostgreSQL 9.3beta1 Documentation</A
57
HREF="test-parser.html"
74
>Appendix F. Additional Supplied Modules</TD
102
> module provides backwards-compatible
103
text search functionality for applications that used
107
> before text searching was integrated
119
>F.39.1. Portability Issues</A
122
> Although the built-in text search features were based on
126
> and are largely similar to it,
127
there are numerous small differences that will create portability
128
issues for existing applications:
134
STYLE="list-style-type: disc"
136
> Some functions' names were changed, for example <CODE
148
provides aliases having the old names.
152
STYLE="list-style-type: disc"
154
> The built-in text search data types and functions all exist within
155
the system schema <TT
158
>. In an installation using
162
>, these objects would usually have been in
166
> schema, though some users chose to place them
167
in a separate schema of their own. Explicitly schema-qualified
168
references to the objects will therefore fail in either case.
173
provides alias objects that are stored in <TT
177
(or another schema if necessary) so that such references will still work.
181
STYLE="list-style-type: disc"
183
> There is no concept of a <SPAN
185
>"current parser"</SPAN
190
> in the built-in text search features, only of a current
191
search configuration (set by the <TT
193
>default_text_search_config</TT
195
parameter). While the current parser and current dictionary were used
196
only by functions intended for debugging, this might still pose
197
a porting obstacle in some cases.
201
> module emulates these
202
additional state variables and provides backwards-compatible functions
203
for setting and retrieving them.
208
> There are some issues that are not addressed by the replacement
212
> module, and will therefore require
213
application code changes in any case:
219
STYLE="list-style-type: disc"
224
> trigger function allowed items in its
225
argument list to be names of functions to be invoked on the text data
226
before it was converted to <TT
229
> format. This was removed
230
as being a security hole, since it was not possible to guarantee that
231
the function invoked was the one intended. The recommended approach
232
if the data must be massaged before being indexed is to write a custom
233
trigger that does the work for itself.
237
STYLE="list-style-type: disc"
239
> Text search configuration information has been moved into core
240
system catalogs that are noticeably different from the tables used
244
>. Any applications that examined
245
or modified those tables will need adjustment.
249
STYLE="list-style-type: disc"
251
> If an application used any custom text search configurations,
252
those will need to be set up in the core
253
catalogs using the new text search configuration SQL commands.
257
> module offers a little
258
bit of support for this by making it possible to load an old set
262
> configuration tables into
266
> 8.3. (Without the module,
267
it is not possible to load the configuration data because values in the
271
> columns cannot be resolved to functions.)
272
While those configuration tables won't actually <SPAN
279
anything, at least their contents will be available to be consulted
280
while setting up an equivalent custom configuration in 8.3.
284
STYLE="list-style-type: disc"
288
>reset_tsearch()</CODE
293
functions are not supported.
297
STYLE="list-style-type: disc"
299
> The replacement <TT
302
> module does not define
303
any alias operators, relying entirely on the built-in ones.
304
This would only pose an issue if an application used explicitly
305
schema-qualified operator names, which is very uncommon.
316
>F.39.2. Converting a pre-8.3 Installation</A
319
> The recommended way to update a pre-8.3 installation that uses
332
> Make a dump from the old installation in the usual way,
333
but be sure not to use <TT
352
> In the new installation, create empty database(s) and install
357
database that will use text search. This must be done
364
> loading the dump data! If your old installation
368
> objects in a schema other
372
>, be sure to adjust the
375
>CREATE EXTENSION</TT
376
> command so that the replacement
377
objects are created in that same schema.
383
> Load the dump data. There will be quite a few errors reported
384
due to failure to recreate the original <SPAN
388
objects. These errors can be ignored, but this means you cannot
389
restore the dump in a single transaction (eg, you cannot use
402
> Examine the contents of the restored <SPAN
406
configuration tables (<TT
410
create equivalent built-in text search configurations as needed.
411
You may drop the old configuration tables once you've extracted
412
all the useful information from them.
418
> Test your application.
424
> At a later time you may wish to rename application references
425
to the alias text search objects, so that you can eventually
426
uninstall the replacement <TT
438
>F.39.3. References</A
441
> Tsearch2 Development Site
443
HREF="http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/"
445
>http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/</A
455
SUMMARY="Footer navigation table"
466
HREF="test-parser.html"
b'\\ No newline at end of file'