Greg Stark wrote:
> "waiting" means it's blocked trying to acquire a lock. Some open
> transaction has the table you're trying to index locked. Look in
> pg_locks and pg_stat_activity to find out who.
Or you might find CREATE INDEX CONCURRENTLY fits your situation.
http://www.postgresql.org/docs/8.3/static/sql-createindex.html#SQL-CREATEINDEX-CONCURRENTLY
--
Richard Huxton
Archonet Ltd