This is more of a heads up than a question but I'm curious what others are doing.
We recently were seeing postgres i/o errors in glassfish logs, "org.postgresql.util.PSQLException: An I/O error occured while sending to the backend", so likely something was wrong with the db connection pool. We restarted glassfish, which also reestablishes the db connection pool, and it began working again.
This led us to enable the Glassfish jdbc validate db connection before use from the Admin console. It added two attributes to the postgres connection pool section in domain.xml, validation-table-name="setting" name="dvnDbPool" is-connection-validation-required="true":
<jdbc-connection-pool max-pool-size="64" datasource-classname="org.postgresql.ds.PGPoolingDataSource" validation-table-name="setting" name="dvnDbPool" is-connection-validation-required="true" res-type="javax.sql.DataSource">
Hopefully this means we won't see this particular failure again.