I had this issue of adding PGBouncer to existing 12.0 CE sites. The issue comes down to this:
If I set pgbouncer.ini pool_mode = session, then everything works but there's no benefit from PGBouncer.
If I set pgbouncer.ini pool_mode = transaction, then pooling is a benefit, but CRON and CHAT become inoperative.
To try and resolve Case 1, I've tried many pgbouncer.ini configurations.
To try and resolve Case 2, I've read Odoo and Openerp forums back to version 6, and tried many permutations of the suggestions using odoo-bin, odoo-gevent, 3rd party wsgi servers (gunicorn, cherrypy), CRON and CHAT listeners bypassing PGBouncer, etc.
Can anyone make some new qualified CONFIG or PROCESS or CODE suggestions for running 12.0 CE through PGBouncer and keeping CRON and CHAT features?