Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit6088bfb

Browse files
committed
Create a quick-and-dirty list of known migration issues for pre-8.3
users of tsearch. This isn't meant to be permanent documentation,but to call out the areas that need either fixing or real documentation.
1 parentf1c8783 commit6088bfb

File tree

1 file changed

+91
-2
lines changed

1 file changed

+91
-2
lines changed

‎doc/src/sgml/textsearch.sgml

Lines changed: 91 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!-- $PostgreSQL: pgsql/doc/src/sgml/textsearch.sgml,v 1.21 2007/10/21 20:04:37 tgl Exp $ -->
1+
<!-- $PostgreSQL: pgsql/doc/src/sgml/textsearch.sgml,v 1.22 2007/10/22 03:37:04 tgl Exp $ -->
22

33
<chapter id="textsearch">
44
<title id="textsearch-title">Full Text Search</title>
@@ -3476,9 +3476,98 @@ Parser: "pg_catalog.default"
34763476
<title>Migration from Pre-8.3 Text Search</title>
34773477

34783478
<para>
3479-
This needsto be written ...
3479+
Thisareaneedslots of work. Here is a quick list of known issues:
34803480
</para>
34813481

3482+
<itemizedlist mark="bullet">
3483+
<listitem>
3484+
<para>
3485+
The old contrib/tsearch2 objects <emphasis>must</> be removed from
3486+
the pg_dump output from a pre-8.3 database. While many of them won't
3487+
load for lack of a tsearch2.so library, some do and cause problems.
3488+
We have a working perl script for doing this with a custom- or tar-format
3489+
backup, but there is a proposal to incorporate the functionality directly
3490+
into pg_restore. Neither approach will help for pg_dumpall output.
3491+
</para>
3492+
</listitem>
3493+
3494+
<listitem>
3495+
<para>
3496+
The old dump may include schema-qualified references to the old
3497+
contrib/tsearch2 objects; for example <literal>public.tsvector</>
3498+
columns in table definitions. These will fail since the objects
3499+
are now in the pg_catalog schema. Given current pg_dump behavior
3500+
this will happen only for tables that are in a different schema
3501+
from the tsearch2 objects; which makes it more likely to bite
3502+
people who carefully put their tsearch2 objects in a
3503+
non-<literal>public</> schema.
3504+
</para>
3505+
3506+
<para>
3507+
Question: will restore-time failures of this type happen for
3508+
any objects other than the tsvector and tsquery datatypes?
3509+
</para>
3510+
3511+
<para>
3512+
The basic alternatives for fixing this seem to involve creating
3513+
a dummy linkage, such as a public.tsvector domain linking to the
3514+
base pg_catalog.tsvector type (which only helps for the datatypes);
3515+
or stripping the schema references out of the dump. We could
3516+
just recommend that users do this manually, or try to provide
3517+
some tools to help.
3518+
</para>
3519+
</listitem>
3520+
3521+
<listitem>
3522+
<para>
3523+
We have renamed the built-in tsvector update triggers, and changed
3524+
their arguments too. This will result in CREATE TRIGGER commands
3525+
failing during load, which can be ignored, but users will need to
3526+
re-issue them with suitable argument adjustment. We probably
3527+
can't automate that for them. Also, the old tsearch2 trigger
3528+
function offered an option to invoke functions, which was removed
3529+
as being a security hole. Users who were relying on that will need to
3530+
write custom trigger functions as a substitute. I think all we
3531+
can do here is document what to do to fix it.
3532+
</para>
3533+
</listitem>
3534+
3535+
<listitem>
3536+
<para>
3537+
We have renamed a number of other functions besides the triggers,
3538+
compared to the tsearch2 versions. This seems unlikely to cause
3539+
any problems during dump/reload but it will require adjustments in
3540+
the bodies of stored procedures and in client application code.
3541+
Again, not much to do except document it.
3542+
</para>
3543+
</listitem>
3544+
3545+
<listitem>
3546+
<para>
3547+
Configuration setup is completely different now. Can we provide
3548+
any automated assistance for translating an old custom setup?
3549+
It probably can't be 100% automatic in any case, so maybe documentation
3550+
is the best we can do here too. Aside from the inside-the-database
3551+
differences, outside-the-database configuration files now have
3552+
prescribed location and extensions, which was not true before.
3553+
</para>
3554+
</listitem>
3555+
3556+
<listitem>
3557+
<para>
3558+
Relocation of configuration from add-on tables into core system catalogs
3559+
will break client queries that looked at the add-on tables.
3560+
</para>
3561+
</listitem>
3562+
3563+
<listitem>
3564+
<para>
3565+
What else?
3566+
</para>
3567+
</listitem>
3568+
3569+
</itemizedlist>
3570+
34823571
</sect1>
34833572

34843573
</chapter>

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp