On Mon, Jun 8, 2009 at 2:21 PM, Jeff Kowalczyk
<..hidden..> wrote:
When running the requisite steps to add contrib functions to a
new-database company file for trunk (1.3):
$ createdb -U postgres -O ledgersmb mycompany ;
$ createlang -U postgres plpgsql -d mycompany ;
$ psql -U postgres -d mycompany -f /usr/share/postgresql-8.3/contrib/tsearch2.sql
$ psql -U postgres -d mycompany -f /usr/share/postgresql-8.3/contrib/tablefunc.sql
$ psql -U postgres -d mycompany -f /usr/share/postgresql-8.3/contrib/pg_trgm.sql
It seems like the functions are being installed to a cluster-wide
namespace location. The following error messages are returned:
Hmmm... Try twice with a clean template1 and see if the issue is a past failure.
To clean template1:
UPDATE pg_database SET istemplate = FALSE where datname = 'template1';
DROP DATABASE template1;
CREATE DATABASE template1 WITH TEMPLATE template0;
UPDATE pg_database SET istemplate = TRUE where datname = 'template1';
Then try again twice.
Best Wishes,
Chris Travers
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:8: ERROR: type "tsvector" already exists
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:9: ERROR: type "tsquery" already exists
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:10: ERROR: type "gtsvector" already exists
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:11: ERROR: type "gtsq" already exists
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:18: ERROR: function "lexize" already exists with same argument types
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:24: ERROR: function "lexize" already exists with same argument types
psql:/usr/share/postgresql-8.3/contrib/tsearch2.sql:30: ERROR: function "lexize" already exists with same argument types
...
IIRC, and I can't find the conversation in the #ledgersmb logs to support
it, the recommendation was that the contrib functions were to be loaded
local to each company database, for isolation and re-deployment purposes.
Should psql be run with a different 'search_path', in order to install
these functions to the mycompany database only?
/* $PostgreSQL: pgsql/contrib/tsearch2/tsearch2.sql.in,v 1.4 2007/11/28 19:33:04 tgl Exp $ */
-- Adjust this setting to control where the objects get created.
SET search_path = public;
-- These domains are just to catch schema-qualified references to the
-- old data types.
CREATE DOMAIN tsvector AS pg_catalog.tsvector;
CREATE DOMAIN tsquery AS pg_catalog.tsquery;
CREATE DOMAIN gtsvector AS pg_catalog.gtsvector;
CREATE DOMAIN gtsq AS pg_catalog.text;
--dict interface
CREATE FUNCTION lexize(oid, text)
RETURNS _text
as 'ts_lexize'
LANGUAGE INTERNAL
RETURNS NULL ON NULL INPUT;
...
Thanks,
Jeff
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Ledger-smb-devel mailing list
..hidden..
https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel