Steve Horn <steve@stevehorn.cc> writes:
> I ran this command:
> select pg_class.relname,pg_locks.* from pg_class,pg_locks where
> pg_class.relfilenode=pg_locks.relation;
> and it appears that almost every table in my database has
> ""AccessShareLock". I have read that those locks are placed on tables for
> SELECT access.
Well, an AccessShareLock would definitely prevent you from dropping the
table. The question is which session(s) are holding such locks and why.
I suspect that you have some long-running transactions, perhaps
accidentally so. As Devrim mentioned, joining pg_locks against
pg_stat_activity would go a long way towards explaining what's blocking
your DROP attempt.
regards, tom lane