要旨

pgpool でオンラインリカバリを使用する際にインストールするC言語関数は、pg_dumpallの吐き出しを新しくinitdbしたDBにインストールするだけでは移行されません。
initdbしたDBに対して個別にC言語関数のインストールをしましょう。


詳細

新しいverのPostgreSQLにデータを移行する場合、pg_dumpを利用したダンプとリストア、あるいはpg_upgradeの利用が必要です

例えば、古いVerのPostgreSQLが5432で動いていて、新しいVerのPostgreSQLが5434で動いている場合
pg_dumpall -p 5432 | psql -d postgres -p 5434
とすることでデータを移行できます。

しかし、pgpool_switch_xlog関数は中途半端に移行されてしまうので、データを移行する前か後にC言語関数のインストールが必要です。

pg_dumpall -p 5432 | psql -d postgres -p 5434とすることで、pgpool_switch_xlog関数自体はインストールされます。\dfで表示されることを確認しました。
しかし、実際に pgpool_switch_xlog関数を実行するといつまでたっても応答が返ってこず、またアーカイブログも所定のフォルダに生成されませんでした。

C言語関数のインストールを再度実施することで解決しました。

※なぜ、再度インストールする必要があるのかは分かりません…