In case Florian and I don't finish his changes to this contrib before
beta, at least get this stuff in. ftipatch.txt - Updates to docs and scripts. Run in the fulltextindexdir WARNING - Add to fulltextindex dir uninstall.sql - Add to fulltextindex dir
This commit is contained in:
parent
1f8a63eb08
commit
f68fe6716c
@ -50,7 +50,7 @@ string), btree indices can be used by PostgreSQL.
|
||||
Now, how do we create the trigger that maintains the fti-table? First: the
|
||||
fti-table should have the following schema:
|
||||
|
||||
create cds-fti ( string varchar(N), id oid );
|
||||
create cds-fti ( string varchar(N), id oid ) without oids;
|
||||
|
||||
Don't change the *names* of the columns, the varchar() can in fact also
|
||||
be of text-type. If you do use varchar, make sure the largest possible
|
||||
|
25
contrib/fulltextindex/WARNING
Normal file
25
contrib/fulltextindex/WARNING
Normal file
@ -0,0 +1,25 @@
|
||||
WARNING
|
||||
-------
|
||||
|
||||
This implementation of full text indexing is very slow and inefficient. It is
|
||||
STRONGLY recommended that you switch to using contrib/tsearch which offers these
|
||||
features:
|
||||
|
||||
Advantages
|
||||
----------
|
||||
* Actively developed and improved
|
||||
* Tight integration with OpenFTS (openfts.sourceforge.net)
|
||||
* Orders of magnitude faster (eg. 300 times faster for two keyword search)
|
||||
* No extra tables or multi-way joins required
|
||||
* Select syntax allows easy 'and'ing, 'or'ing and 'not'ing of keywords
|
||||
* Built-in stemmer with customisable dictionaries (ie. searching for 'jellies' will find 'jelly')
|
||||
* Stop words automatically ignored
|
||||
* Supports non-C locales
|
||||
|
||||
Disadvantages
|
||||
-------------
|
||||
* Only indexes full words - substring searches on words won't work.
|
||||
eg. Searching for 'burg' won't find 'burger'
|
||||
|
||||
Due to the deficiencies in this module, it is quite likely that it will be removed from the standard PostgreSQL distribution in the future.
|
||||
|
@ -25,7 +25,7 @@
|
||||
* '/usr/local/pgsql/lib/contrib/fti.so' language 'C';
|
||||
*
|
||||
* -- Create the FTI table
|
||||
* create table product_fti (string varchar(255), id oid);
|
||||
* create table product_fti (string varchar(255), id oid) without oids;
|
||||
*
|
||||
* -- Create an index to assist string matches
|
||||
* create index product_fti_string_idx on product_fti (string);
|
||||
|
@ -1,3 +1,3 @@
|
||||
create function fti() returns trigger as
|
||||
'MODULE_PATHNAME'
|
||||
language 'C';
|
||||
CREATE OR REPLACE FUNCTION fti() RETURNS trigger AS
|
||||
'MODULE_PATHNAME', 'fti'
|
||||
LANGUAGE 'C' VOLATILE CALLED ON NULL INPUT;
|
||||
|
1
contrib/fulltextindex/uninstall.sql
Normal file
1
contrib/fulltextindex/uninstall.sql
Normal file
@ -0,0 +1 @@
|
||||
DROP FUNCTION fti() CASCADE;
|
Loading…
x
Reference in New Issue
Block a user