Further fix attached. I think "of character type" suggests that the column must be of type char, which is not the case -- varchar and text work fine too AFAICS.
-- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Index: src/backend/utils/adt/tsvector_op.c =================================================================== RCS file: /home/alvherre/cvs/pgsql/src/backend/utils/adt/tsvector_op.c,v retrieving revision 1.12 diff -c -p -r1.12 tsvector_op.c *** src/backend/utils/adt/tsvector_op.c 1 Jan 2008 19:45:53 -0000 1.12 --- src/backend/utils/adt/tsvector_op.c 20 Jan 2008 01:09:30 -0000 *************** tsvector_update_trigger(PG_FUNCTION_ARGS *** 1374,1380 **** if (!istexttype(SPI_gettypeid(rel->rd_att, numattr))) ereport(ERROR, (errcode(ERRCODE_DATATYPE_MISMATCH), ! errmsg("column \"%s\" is not of character type", trigger->tgargs[i]))); datum = SPI_getbinval(rettuple, rel->rd_att, numattr, &isnull); --- 1374,1380 ---- if (!istexttype(SPI_gettypeid(rel->rd_att, numattr))) ereport(ERROR, (errcode(ERRCODE_DATATYPE_MISMATCH), ! errmsg("column \"%s\" is not of a character type", trigger->tgargs[i]))); datum = SPI_getbinval(rettuple, rel->rd_att, numattr, &isnull);
---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate