Готов предположить, что в БД есть логика (триггеры, процедуры), и вот там надо сбрасывать кеш. Была подобная ситуация, только с memcached из Oracle PL/SQL. Вполне себе реальная задача, а не just for fun.
Косяк, конечно, в том, что создатель кеша (PHP-что-то-там) и инвалидатор кеша (PostgreSQL) находятся в разных слоях архитектуры, и тем размазывают ответственность за кеш (ну или данные — как посмотреть). Но это исправлять дольше и дороже.
Я тоже не могу себе представить, зачем такое может понадобится.
Могу предложить лишь альтернативный вариант, не такой сложный в поддержке: postgres ставит у себя флаг того, что надо сбросить кеш (в крайнем случае в однострочной таблице). Это делается триггером либо через ту же процедуру clear_cache. В php приложении поднимается демон и периодически (пусть в 30 секунд) проверяется значение этого флага. Если флаг взведен — очистить кеш, сбросить флаг.
www.hagander.net/talks/
Data driven cache invalidation (slightly updated), JDCon-East, New York City, NY, March 2011 and EuroPython 2011, Florence, Italy (+ scripts)
че-то правда у него пдфка не грузится, а
скрипты скачиваются
Сброс PHP-кеша через SQL-запрос или из пушки по воробьям