PGBouncer: ошибка: подготовленный оператор уже существует - PullRequest
0 голосов
/ 30 октября 2019

Я понимаю, что это сообщение несколько лет назад, но я все еще сталкиваюсь с теми же проблемами. К сожалению, предлагаемые изменения не работают для моего текущего варианта использования.

Столкнулся со следующей проблемой: - «Ошибка: подготовленный оператор xxx не существует» - «Ошибка: подготовленный оператор xxx уже существует»

Пробовал после предложенного изменения, но все еще получал ту же ошибку:

Технический стек:

  • Spring Boot (2.1.7.RELEASE)
  • Spring Data (JPA+ Hibernate)
  • Приложение развернуто на Heorku с использованием Heroku Postgre
  • PgBouncer на стороне клиента.
  • Изменен URL-адрес БД со следующими свойствами: "? Sslmode = disable & prepareThreshold =0 & prepareStatementCacheQueries = 0 "
  • В конфигурацию Heroku добавлены следующие параметры:
    • PGSSLMODE = отключить
    • PGBOUNCER_POOL_MODE = транзакция
    • PGBOUNCER_IGNORE_STETERS_ig_t_t_t_f_S_TAR_S_TAR_S_TAR_S_TAR_S_TAR_S_TAR_S_ * * * *
    • установить в качестве значения конфигурации PGBOUNCER_URLS имя БД Urls
  • Spring Data настроен на использование двух баз данных для (Reaд / писать и читать).
  • Использование @Transactional (readOnly = true) с @Around("@annotation(transactional)") public Object proceed(ProceedingJoinPoint proceedingJoinPoint, Transactional transactional) throws Throwable { try { if(transactional.readOnly()) { RoutingDataSource.setReplicaRoute(); LOGGER.info("Routing database call to the read replica"); } return proceedingJoinPoint.proceed(); } finally { RoutingDataSource.clearReplicaRoute(); } }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...