Dealing with failovers and High Availability
Some obvious issues, which can be addressed with pgpool, are of High Availability and failover. In general, there are various approaches available to handle those topics with or without pgpool.
Using PostgreSQL streaming and Linux HA
The easiest approach to High Availability with pgpool is to use PostgreSQL onboard tools along with Linux HA. In this case, in our world, the best approach is to run pgpool without statement-level replication and use PostgreSQL streaming replication to sync the data.
The pgpool tool can be configured to do load balancing and automatically send write requests to the first and read requests to the second node.
What happens in case of failover? Let us assume that the master will crash. In this case, Linux HA would trigger the failover and move the service IP of the master to the slave. The slave can then be promoted to be the new master by Linux HA (if this is desired). The pgpool tool would then simply face a broken database...