Если они там; они там, но они волшебным образом не выскочили из воздуха. Хотя я бы хотел, чтобы вы вернулись и рассказали нам, какими они были в вашем случае, обычно это одна из двух вещей,
- Пул подключений
- ORM или SQL абстракция
Иногда эти парни подключаются и запускают пустые транзакции или готовят транзакцию. Это всегда результат плохой библиотеки. Это простительно, если библиотека является новой или новой для базы данных. Если библиотеке уже много лет, и я занимаюсь этим, я подозреваю, что они не слишком много смотрят на нее и смотрят на альтернативы.
Из комментариев
Postgres не создает соединений самостоятельно. Это ваше приложение создает эти соединения и выполняет эти запросы. Возможно, пул соединений или что-то подобное. - a_horse_with_no_name 10 сентября '13 в 9:03
Вы запускаете приложение Java? Используя HikariCP, или, может быть, другой вариант пула соединений? Я использую HikariCP и вижу похожую вещь, когда я захожу в psql и выбираю запрос из pg_stat_activity; ... Мне также было интересно, почему это происходит; я предполагаю, что это механизм, с помощью которого HikariCP сохраняет связи "свежими". - Крис В. 16 января '16 в 19:22
Хотя это возможно, это попытка сохранить связь «свежей», кошерный способ сделать это примерно так
result = PQexec(imp_dbh->conn, "/* DBD::Pg ping test v3.6.0 */");
Вы можете подать отчет об ошибке, чтобы использовать этот метод.